L
lqg
Unregistered / Unconfirmed
GUEST, unregistred user!
如何在installshield Pro6.2的脚本中调用GetVolumeInformation()这个
API?(我想取得C盘的序列号)我反复试了好多回都不行。有100大分等待哦!
以下是有关的脚本代码:
//API函数的声明
prototype BOOL Kernel.GetVolumeInformation(BYREF STRING,
BYREF STRING, LONG, POINTER,POINTER,POINTER,BYREF STRING,LONG);
//相关变量的声明
NUMBER nResult,nSetupType;
STRING szTitle, szMsg;
LIST listInfo;
BOOL boolSerial;
STRING VolName,FileSysName,rootPath;
INT MaxCLength,FileSysFlag,nvSerialResult;
POINTER pMaxCLength,pFileSysFlag,pnvSerialResult;
//取回C盘的序列号,并用SdShowInfoList显示出来:
Dlg_SdShowSerial:
svSerialResult ="";
VolName ="";
rootPath ="c:";
pnvSerialResult=&nvSerialResult;
pFileSysFlag=&FileSysFlag;
pMaxCLength=&MaxCLength;
boolSerial=GetVolumeInformation(
rootPath,VolName,255,pnvSerialResult,
pMaxCLength,pFileSysFlag,FileSysName,255);
NumToStr(svSerialResult,nvSerialResult);
ListAddString(listInfo,svSerialResult,AFTER);
szTitle ="系统信息";
szMsg ="您需要将下面所示的号码告知软件所有者,/n"+
"并从该处获得相应的安装序列号。";
SdShowInfoList(szTitle,szMsg,listInfo);
ListDestroy(listInfo);
API?(我想取得C盘的序列号)我反复试了好多回都不行。有100大分等待哦!
以下是有关的脚本代码:
//API函数的声明
prototype BOOL Kernel.GetVolumeInformation(BYREF STRING,
BYREF STRING, LONG, POINTER,POINTER,POINTER,BYREF STRING,LONG);
//相关变量的声明
NUMBER nResult,nSetupType;
STRING szTitle, szMsg;
LIST listInfo;
BOOL boolSerial;
STRING VolName,FileSysName,rootPath;
INT MaxCLength,FileSysFlag,nvSerialResult;
POINTER pMaxCLength,pFileSysFlag,pnvSerialResult;
//取回C盘的序列号,并用SdShowInfoList显示出来:
Dlg_SdShowSerial:
svSerialResult ="";
VolName ="";
rootPath ="c:";
pnvSerialResult=&nvSerialResult;
pFileSysFlag=&FileSysFlag;
pMaxCLength=&MaxCLength;
boolSerial=GetVolumeInformation(
rootPath,VolName,255,pnvSerialResult,
pMaxCLength,pFileSysFlag,FileSysName,255);
NumToStr(svSerialResult,nvSerialResult);
ListAddString(listInfo,svSerialResult,AFTER);
szTitle ="系统信息";
szMsg ="您需要将下面所示的号码告知软件所有者,/n"+
"并从该处获得相应的安装序列号。";
SdShowInfoList(szTitle,szMsg,listInfo);
ListDestroy(listInfo);