我開發了一個程式,客戶端的版本是,1.0.0.0,報務器的版本是:1.0.0.1,在程式裡我怎樣進行版本比較?
看了其它前輩的之後,抄到下面後,我就不知道怎樣比較客戶端與服務器端的不同了?function TMainForm.GetVersionInfo:String;
var
VerInfoSize:DWORD;
VerInfo:Pointer;
VerValueSize:DWORD;
VerValue:PVSFixedFileInfo;
Dummy:DWORD;
V1,V2,V3,V4:DWORD;
begin
VerInfoSize:=GetFileVersionInfoSize(PChar(ParamStr(0)),Dummy);
GetMem(VerInfo, VerInfoSize);
GetFileVersionInfo(PChar(ParamStr(0)),0,VerInfoSize,VerInfo);
VerQueryValue(VerInfo,'\',Pointer(VerValue),VerValueSize); with VerValue^ do
begin
V1:=dwFileVersionMS shr 16;
V2:=dwFileVersionMS and $FFFF;
V3:=dwFileVersionLS shr 16;
V4:=dwFileVersionLS and $FFFF;
end;
Result:=IntToStr(V1)+IntToStr(V2)+IntToStr(V3)+IntToStr(V4);
FreeMem(VerInfo, VerInfoSize);
end;
看了其它前輩的之後,抄到下面後,我就不知道怎樣比較客戶端與服務器端的不同了?function TMainForm.GetVersionInfo:String;
var
VerInfoSize:DWORD;
VerInfo:Pointer;
VerValueSize:DWORD;
VerValue:PVSFixedFileInfo;
Dummy:DWORD;
V1,V2,V3,V4:DWORD;
begin
VerInfoSize:=GetFileVersionInfoSize(PChar(ParamStr(0)),Dummy);
GetMem(VerInfo, VerInfoSize);
GetFileVersionInfo(PChar(ParamStr(0)),0,VerInfoSize,VerInfo);
VerQueryValue(VerInfo,'\',Pointer(VerValue),VerValueSize); with VerValue^ do
begin
V1:=dwFileVersionMS shr 16;
V2:=dwFileVersionMS and $FFFF;
V3:=dwFileVersionLS shr 16;
V4:=dwFileVersionLS and $FFFF;
end;
Result:=IntToStr(V1)+IntToStr(V2)+IntToStr(V3)+IntToStr(V4);
FreeMem(VerInfo, VerInfoSize);
end;
解决方案 »
- 有用过TMS SmoothControl控件的吗?进来看看
- 如何在创建文件加进度条?
- 求一个sql语句的问题,,合并相同的数据
- 如何使用 fastreport3 分组
- TScrollingWinControl当水平、垂直滚动条同时存在时,有没办法改变右下角那小块的颜色?
- 求救:怎么获得CPU序列号???不止是Intel的
- delphi程序中限制打开次数和限制时间的程序怎么写呀???
- chongyang() /yjs_lh(长风浪子) 等高手再幫幫我吧??解決問題後一起給分
- 新人求助
- 请您无论如何进来看看(也许这个问题对您来说是小菜,可是我却是想破了头)
- 帮忙看这段代码,关于delphi控制word打印的!
- 如何在SQL语句中为TEXT字段回车?
樓上教訓的是,我用Delphi不久,才2個多月,確實暈得很!謝謝啦!