透過Browser(如IE6)來執行, Delphi寫好的應用程式 |
答題得分者是:bigdogchina
|
max5020
資深會員 發表:30 回覆:277 積分:321 註冊:2003-06-04 發送簡訊給我 |
|
likush
高階會員 發表:5 回覆:235 積分:103 註冊:2002-10-08 發送簡訊給我 |
|
bigdogchina
版主 發表:238 回覆:523 積分:312 註冊:2003-04-28 發送簡訊給我 |
不好意思,小弟插個花:
非常贊同likush大大的建議,一個ActiveX控制項就是一個非常小的程式,在製作網頁方面,可以把它插入到Web頁中或者在VB Script等Script中使用,它的祖先是VBX元件,接著叫OCX元件,最後演化爲ActiveX員件,它就象常規程式使用的命令按鈕、單選鈕和列表框一樣。 而我們在Delphi中可以很輕鬆的實現,利用ActiveForm,因爲ActiveForm也是一種ActiveX元件,只是ActiveForm本身是一個Container物件。可以理解爲AcitveForm包含了其他元件,而ActiveForm和它包含的元件可以變成一個OCX類型元件,再利用IE這個COM/AcitveX Container應用程式之中 =================================
<>人生在勤,不索何獲>
<>業精於勤荒於嬉,行成於思毀於隨>
<>臨淵羡魚不如退而結網>
------
人生在勤,不索何获? |
bigdogchina
版主 發表:238 回覆:523 積分:312 註冊:2003-04-28 發送簡訊給我 |
不好意思,小弟又一次的插花,請原諒:
小弟參考李維大師的"delphi 5.0 分散式多層式應用"中第10章的相關描述,以及站內衆多前輩的解析:
http://delphi.ktop.com.tw/topic.php?topic_id=24461
http://home.pchome.com.tw/home/delphiwww/a39.htm
以及趙海先生的實做:
http://delphi.mychangshu.com
試著自己來實做。下面是完整的製作流程,請不妨參考一下,或許對解決相關問題會有所啓迪: 1 製作一個ActiveForm(File--->Other--->New Items--->ActiveX)
2 單擊上圖的OK後出現下圖
我們就可以按Delphi7默認的方式(當然也可以改成您想要的名稱啊),只需要留意一點:最好將<>>這個選項勾上,因爲版本資訊不但可以讓我們控制用戶端的 > >), src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=17221899&CC=385161">
在該Form上放如一個Button,測試一下,在OnClick中輸入:
procedure TActiveFormX.Button1Click(Sender: TObject); begin ShowMessage('I Love KTop'); end;4 一個基本的ActiveForm是完成了,現在我們需要的是Web發佈,如下圖 單擊後接著出現下圖,進行詳細的設置 需要注意一下:Target dir(Full path of the deployed OCX)是指的是ActiveForm要分發的目的地位置。Target URL(Virtual path of the deployed OCX)是指該ActiveForm位於HTML首頁中codebase tag的位置。HTML dir(Full path of the deployed HTML file)是指在Delphi7分發ActiveForm元件的時候會自動的幫助我們産生一個HTML的首頁檔案的位置。除了這3項是必須設置外,我們還應該留一下:Include file version number和Auto increment release number,前者在第2步中選擇了Include Version Information後就會在這裏自動幫我們勾選。而後者則代表每當我們重新編譯該ActiveForm時自動的增加其版本號。如此一來當伺服器中分發新的ActiveForm元件之後,用戶端訪問該頁面時就會自動下載該ActiveForm並更新執行 5 做完這一切後,當然就是發佈測試網頁了哦,如下圖: 6 好啦,來試試吧,如下圖: 奇怪,爲什麽會出現這樣的情況呢,無法正常顯示 7 別擔心,我們還有下面的步驟要接著做呢 在這之前,先看看> 對於 > 現在將利用> > 注意哦,後兩個>開始>---&>運行>中輸入<>>,如下圖: < src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=17225029&CC=385231"> 說明:參數-n指定主題的證書名稱。此名稱必須符合 X.500 標準。最簡單的方法是在雙引號中指定此名稱,並加上字首 CN=;例如,"CN=myName"。注意這裏的CN必須大寫。-sk指定主題的密鑰容器位置,該位置包含私鑰。如果密鑰容器不存在,系統將創建一個。輸入makecert -?可以查看其他參數的用法。 然後會出現下面的兩幅畫面: 因爲是測試,小弟設置的密碼很簡單,都是:123456(實際應用可不能這麽簡單哦)。然後就會在當前目錄(>>和<>>的兩個文檔 >開始>---&>運行>中輸入<>>,如下圖: < src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=17226281&CC=385259"> 9 現在該是SignCode.exe出場的時候啦: 運行SignCode.exe(由於設置都非常簡單,我就不囉嗦了,圖中有相應的設置) 同理,上圖所設置的密碼還是123456 默認是爲sha1演算法,不過小弟比較偏好md5,請根據實際情況來做 這裏留意一下,我們可以使用別人的時間戳哦,嘿嘿,在其中輸入:http://timestamp.verisign.com/scripts/timstamp.dll Oh,my god,數位簽名終於完成了! src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=17230976&CC=385364"> 最後的效果圖如下: 還需要注意一點就是,我們在第4中的設置Target URL時,選擇的是當前機器(http://BIGBOSS-LSJ),如果是自己測試的話,當然OK的啦!當別人試圖訪問時,就會顯示錯誤,所以我們要修改一下ActiveFormProj1.htm,將其codebase="http://BIGBOSS-LSJ/ActiveFormProj1.ocx#version=1,0,0,0"改爲codebase="http://211.162.133.251/ActiveFormProj1.ocx#version=1,0,0,0",這樣就可以啦! PS:)小弟的一點淺見,實際目的是抛磚引玉,讓真正的高手顯身,還請前輩們多多批評。。。。。。。。槽糕,都淩晨2點過了,小弟先行告退,睡覺去啦 ================================= <>人生在勤,不索何獲> <>業精於勤荒於嬉,行成於思毀於隨> <>臨淵羡魚不如退而結網> 發表人 -
------
人生在勤,不索何获? |
likush
高階會員 發表:5 回覆:235 積分:103 註冊:2002-10-08 發送簡訊給我 |
|
hhuang
一般會員 發表:0 回覆:1 積分:0 註冊:2003-01-28 發送簡訊給我 |
|
a903
一般會員 發表:5 回覆:13 積分:3 註冊:2003-08-27 發送簡訊給我 |
|
bigdogchina
版主 發表:238 回覆:523 積分:312 註冊:2003-04-28 發送簡訊給我 |
|
a903
一般會員 發表:5 回覆:13 積分:3 註冊:2003-08-27 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |