全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1144
推到 Plurk!
推到 Facebook!

如何在active x架構中秀出版本資訊

尚未結案
qekhfn1981
一般會員


發表:1
回覆:2
積分:0
註冊:2003-12-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-08 23:10:09 IP:61.59.xxx.xxx 未訂閱
請問各位先進: 用delphi的active x form開發,如何能秀出目前使用者所抓到的版本呢?? 謝謝
aquarius
資深會員


發表:3
回覆:347
積分:330
註冊:2003-05-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-09 09:25:11 IP:211.23.xxx.xxx 未訂閱
最簡單的做法, 在你的 SOURCE CODE 中, 加上一個 Global const string , 裏頭就是放版本資訊, 以後改版, 記得改這個常數字串就好了... :) ...Aquarius
------
水瓶男的blog: http://791909.blogspot.com
qekhfn1981
一般會員


發表:1
回覆:2
積分:0
註冊:2003-12-08

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-09 20:01:41 IP:210.64.xxx.xxx 未訂閱
請問是不是可以用動態秀出,而不用自己手動去改的呢?? 謝謝^^
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-12-09 20:22:36 IP:61.221.xxx.xxx 未訂閱
引言: 請問各位先進: 用delphi的active x form開發,如何能秀出目前使用者所抓到的版本呢?? 謝謝
qekhfn1981 你好: 建議先使用 Win32 API GetFileVersionInfo 的方法試試
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
aquarius
資深會員


發表:3
回覆:347
積分:330
註冊:2003-05-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-12-10 13:20:17 IP:211.23.xxx.xxx 未訂閱
引言: 請問是不是可以用動態秀出,而不用自己手動去改的呢?? 謝謝^^
差別只是在用檔案總管的右鍵, 是否可以看到版本資訊. 那有不用手動改的, 是人在決定版本編號呀, 一定是要自己去改的!! ...Aquarius
------
水瓶男的blog: http://791909.blogspot.com
qekhfn1981
一般會員


發表:1
回覆:2
積分:0
註冊:2003-12-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-12-10 16:10:44 IP:210.64.xxx.xxx 未訂閱
對不起,你可能誤會我的意思了, 因為我是用active x 開發的,每次reigst都會產生一個版本編號, 我的目的是要秀出那個版本編號....^^
mustapha.wang
資深會員


發表:89
回覆:409
積分:274
註冊:2002-03-13

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-12-10 17:04:39 IP:218.1.xxx.xxx 未訂閱
在ActiveForm里写: (注意,你的ocx编译要包含版本信息)
type
  TLangCodePage = record
    wLanguage: Word;
    wCodePage: Word;
  end;
  PTLangCodePage = ^TLangCodePage;    procedure TAcroprise_eMax.Button1Click(Sender: TObject);
var
  dwSize: DWORD;
  pcFileVersionInfo: PChar;
  sLangID_CharSet,sVersion: string;
  pcInfoValue: PChar;
  dwInfoValueLen: DWORD;
  plc: PTLangCodePage;
begin
  dwSize := GetFileVersionInfoSize(PChar(ComServer.ServerFileName),dwSize);
  if dwSize>0 then
  begin
    ShowMessage(ComServer.ServerFileName);
    sLangID_CharSet:= IntToHex(GetSystemDefaultLangID(), 4) + IntToHex(GetACP(), 4);
    GetMem(pcFileVersionInfo,dwSize);
    GetFileVersionInfo(PChar(ComServer.ServerFileName),0,dwSize,pcFileVersionInfo);
    if VerQueryValue(pcFileVersionInfo, PChar('\VarFileInfo\Translation'), Pointer(plc), dwInfoValueLen) then
      sLangID_CharSet := IntToHex(plc^.wLanguage, 4) + IntToHex(plc^.wCodePage, 4);
    if VerQueryValue(pcFileVersionInfo, PChar('\StringFileInfo\' + sLangID_CharSet + '\ProductVersion'), Pointer(pcInfoValue), dwInfoValueLen) then
      sVersion := 'Version ' + pcInfoValue;
    if VerQueryValue(pcFileVersionInfo, PChar('\StringFileInfo\' + sLangID_CharSet + '\FileVersion'), Pointer(pcInfoValue), dwInfoValueLen) then
      sVersion := sVersion + ' (Build ' + pcInfoValue + ')';
    FreeMem(pcFileVersionInfo, dwSize);
    ShowMessage(sVersion);
  end;
end;
试试看 久病成良医--多试 千人之诺诺,不如一士之谔谔--兼听 發表人 - mustapha.wang 於 2003/12/10 17:08:36
------
江上何人初见月,江月何年初照人
Ktop_Robot
站務副站長


發表:0
回覆:3511
積分:0
註冊:2007-04-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2007-04-30 13:45:07 IP:000.000.xxx.xxx 未訂閱
提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。

------
我是機器人,我不接受簡訊.
系統時間:2024-03-29 4:47:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!