通过调用ComponentTransferData或ComponentMoveData来传输文件的安装必须在文件传输开始之前调用SetStatusWindows,这是为了设置完成指示器百分比为0%而且清除指示器最高行。不再需要另外调用SetStatusWindows。每一个组件的文件被装入时,该组件的 ‘状态文本’字符串会在状态条最高行自动显示。
使用CopyeFile或XcopyFile函数装入文件的安装程序在相继调用CopyFile或XcopyFile之间,可能需要多次调用SetStatusWindows来改变指示器最高行的信息。
在传输文件前,你的安装程序还应该调用StatusUpdate函数激活文件传输过程中百分比完成指示器的自动更新。为了使得在状态条第二行显示正被安装文件的名称和路径,需在传输文件前带参数
INDVFILESTATUS来调用Enable函数。在这些调用后,百分比完成指示器在文件传输过程中被平滑更新,每个文件的文件名在被传输时将显示。 参数: nPercent
指定0到100之间的一个数值来表示百分比完成指示器显示的百分比。若要改变显示在状态条最高行的信息而不改变百分比完成指示器,则指定该参数为-1。 szString
指定显示在状态条最高行的字符串。注意如果一个'DisplayText'参数已被指定给该组件(在IDE中),那么当调用ComponentTransferData时该字符串将自动改写任何该参数指定的文本。 返回值:该函数没有返回值。 2.15 SetTitle
语法:SetTitle (szTitle, nPointSize, nColor);
说明:SetTitle函数根据nColor的值在主窗口标题栏或在主窗口内显示一个标题。 参数: szTitle
指定在主窗口标题栏或主窗口内显示的一个标题。如果标题要显示在窗口的标题栏,你必须在第三个参数位置指定预定义常量BACKGROUNDCAPTION。如果一个标题栏的标题不符合可用空间,那将被从右截尾并以省略号终止。缺省标题栏标题为“安装”。
当给第三个参数传递一个颜色值时,标题在主窗口的顶端左对齐显示。相对主窗口太宽的标题将被从右截尾显示。为创建一个占据多行的标题,可在你希望的行断开处嵌入换行符。 nPointSize
以点数来指定一个在主窗口显示的标题的字号。建议字号为24点数。注意当第三个参数为BACKGROUNDCAPTION时该参数被忽略。 nColor
指定一个颜色或预定义常量BACKGROUNDCAPION。为指示szTitle值应该在主窗口标题栏显示,则在该参数位置传递预定义的常量BACKGROUNDCAPTION。当用户指定了BACKGROUNDCAPTION,nPointSize被忽略;标题栏标题的颜色和字号将由最终用户的系统设置决定。注意该选项在不运行在窗口模式的安装程序中无效;请查看下面的注解。
为指示szTitle值应该在主窗口中显示,通过在该参数位置传递下列预定义的常量之一来指定该标题的颜色:BLACK,BLUE,GREEN,MAGENTA,RED,YELLOW或WHITE。用户也可以在该参数位置传递RGB函数来指定自定义颜色,如下面例子所示: SetTitle(\返回值:
0:表明函数成功设置安装的标题。 < 0:表明函数未能设置安装的标题。 注解:
·不运行于窗口模式下的安装中,第三个参数设置为BACKGROUNDCAPTION时调用SetTitle无效。为在一个标准窗口中运行安装程序,你必须首先以参数DEFWINDOWMODE或FULLWINDOWMODE来调用Enable,然后以参数BACKGROUND调用Enable来显示窗口。 ·用SetColor来设置你安装的背景色。
·用SetFont来设置在背景窗口中显示的标题的字体和字体风格。 2.16 SizeWindow
语法:SizeWindow (nObject, nDx, nDy);
说明:使用SizeWindow函数来改变一个特定用户界面元件的大小。以像素点来指定新的
大小。 参数: nObject
指定要调整大小的对象。在该参数位置传递下列预定义的常量之一:
BACKGROUND:标识为主背景窗口。
METAFILE:标识为在文件传输过程中使用的布告牌。SizeWindow不支持位图文件(.bmp)。该参数对用SdBitmap函数显示的图元文件不起任何作用。SdBitmap自动调整被显示的图元文件的大小。
MMEDIA_AVI:设置播放下一个AVI文件的窗口的大小。所有AVI视频以一个缺省大小来显示。改变大小可能会改变视频的有效分辨率和明快度。 nDx
以像素点指定对象的水平大小。 nDy
以像素点指定对象的垂直大小。 返回值:
0:表明函数成功调整窗口大小。 < 0:表明函数未能调整窗口大小。 注解:
·安装程序可能运行于多个不同的屏幕分辨率下。因此,你需要使用GetExtents函数来确定屏幕的全屏大小,然后在你的SizeWindows函数调用中参数使用比率来指定用户界面对象的大小。 ·该函数仅推荐给高级开发人员。 2.17 StatusUpdate
语法:StatusUpdate (bLink, nFinalPercent);
说明:StatusUpdate函数激活或禁用文件传输操作和状态条进度指示器之间的连接。当bLink是ON,连接被激活并且nFinalPercent指示一个在下一个文件传输结束时显示的最后百分比。在文件传输过程中,状态条平滑地从它的当前值更新到由nFinalPercent指定的值。当bLink是OFF,连接被禁用并且状态条的进度指示器在随后的文件传输中不会被自动更新。
如果文件传输中状态条被激活,则在每次调用CopyFile 或 XcopyFile之前调用StatusUpdate。在调用ComponentTransferData传输文件之前,带参数为ON和100来调用StatusUpdate;这将使状态条在安装的文件传输阶段平滑更新到100%。注意在一个运行基于事件脚本的安装中,ComponentTransferData被自动调用。 参数: bLink
指定是否激活或禁用文件传输操作和状态条进度指示器之间的连接。在该参数位置传递下列预定义常量之一:
ON:指定状态条的进度指示器必须和文件传输操作相连接。
OFF:指定禁用状态条的进度指示器和文件传输操作之间的连接。连接保持为禁用直到它通过一个随后对StatusUpdate带参数bLink为ON的调用而得到重新建立。 状态条可以通过调用SetStatusWindow而被手动更新。 nFinalPercent
指定当bLink为ON时,状态条的进度指示器在下一个文件传输操作结束时必须达到的最后百分比。如果传递给nFinalPercent的值小于状态条的进度指示器的当前值,则进度指示器不会改变。当bLink为OFF时,该参数被忽略。 返回值:
0:表明函数成功。 < 0:表明函数不成功。 注解:
·该函数通过计算由任何文件传输函数传递的总的字节数来工作。然后它计算从进度指示器的当前位置开始到nFinalPercent中的最大值,需每隔多久增加一次进度指示器。
·StatusUpdate函数不能和VerUpdateFile 、VerSearchAndUpdateFile一起工作。当调用那些函数时,你必须禁用状态条或手动更新它。
·为设置状态条到一个初始百分比,在调用StatusUpdate之前调用SetStatusWindow。
3 信息函数
下列信息函数提供操作环境中有效资源的数据:磁盘空间,内存和操作模式: ? ? ? ? ? ? ? ? ?
GetDiskSpace
返回指定磁盘的有效字节数(未使用的)(最高为2GB)。 GetDiskSpaceEx
以bytes、kilebytes、megabytes或gigabytes为单位返回一个磁盘的空闲空间,。 GetEnvVar
返回一个环境变量的当前值。 GetExtents 返回屏幕大小。 GetMemFree
返回运行在Microsoft Windows下的一个应用程序的可用内存。 GetSystemInfo 检索系统信息。 GetValidDrivesList
返回目标系统中所有有效驱动器。 GetWindowHandle 返回主安装窗口的句柄。 Is
提供文件和路径检查服务,查找一个数学协处理器,检测 Windows NT下的管理状态,确定Microsoft Windows是否从网络的共享版本运行。 3.1 GetDiskSpace
语法:GetDiskSpace (szDrive);
说明:GetDiskSpace函数返回指定驱动器上的空闲磁盘空间。 参数: szDrive
指定一个驱动器指示符(驱动器字符后随一个冒号)。你也可在该参数位置指定一个通用导航计算机路径。
返回值:
XXXX:在指定驱动器上的空闲字节数。最大的返回值是2GB。超过2GB的空闲空间也返回2GB。当你需要检测超过2GB的空闲空间时需调用GetDiskSpaceEx。 < 0:表明GetDiskSpace未能获得空闲磁盘空间值。 3.2 GetDiskSpaceEx
语法:GetDiskSpaceEx (szDrive, nUnits);
说明:GetDiskSpaceEx函数返回指定驱动器的空闲磁盘空间值。传递给nUnits的值确定GetDiskSpaceEx的返回值是以bytes、 kilobytes、 megabytes 或 gigabytes度量。 参数: szDrive
指定一个驱动器指示符(驱动器字符后随一个冒号)。用户也可在该参数位置指定一个通用导航计算机(UNC)路径。 nUnits
传递下列预定义常量之一来指明度量单位:
BYTES:指明GetDiskSpaceEx须返回空闲byte数。 KBYTES:指明GetDiskSpaceEx须返回空闲kilobyte数。 MBYTES:指明GetDiskSpaceEx须返回空闲megabyte数。 GBYTES:指明GetDiskSpaceEx须返回空闲gigabyte数。 返回值:
XXXX:在指定驱动器上的空闲bytes、kilobytes、megabytes或 gigabytes数,度量单位视nUnits值而定。 < 0:表明GetDiskSpaceEx未能获得空闲磁盘空间值。 3.3 GetEnvVar
语法:GetEnvVar (szParameter, svValue);
说明:GetEnvVar函数检索一个环境变量的当前值。 参数: szParameter
指定其值要被检索的环境变量的名称。 svValue
返回该环境变量的当前值。 返回值:
0:表明函数检索到环境变量的值。 < 0:表明函数未能检索到环境变量的值。 注解:
·InstallShield没有提供一个改变一个环境变量值的机制。在Microsoft Windows 3.x 和 95环境中,建议用户不要改变环境变量值。如果用户需要设置一个新的环境变量,在Autoexec.bat文件中设置然后重启系统。对于Windows NT,查看如何在Windows NT下设置环境变量。 3.4 GetExtents
语法:GetExtents (nvDx, nvDy);
说明:GetExtents函数检索屏幕大小。屏幕宽以像素点为单位返回给nvDx,高以像素点为单位返回给nvDy。如:一个标准的VGA监控器返回nvDx为640,nvDy为480。 参数: nvDx
以像素点为单位返回屏幕的宽。 nvDy
以像素点为单位返回屏幕的高。 返回值:
0:表明函数成功检索到屏幕的大小。 < 0:表明函数未能检索到这些值。 3.5 GetMemFree 语法:GetMemFree ( );
说明:GetMemFree函数返回运行在Microsoft Windows下的一个应用程序可用的内存大小。因为Microsoft Windows是一个虚拟内存系统,该函数不会返回实际物理内存(称为RAM)而是Windows应用程序可用的内存。要确定目标系统上可用的实际物理内存大小,可调用GetSystemInfo。 参数:
GetMemFree不带参数。以空参数表调用函数,如下所示: GetMemFree(); 返回值:
XXXX:XXXX是应用程序可用的空闲内存的字节数。 < 0:GetMemFree未能返回空闲内存的大小。 注解:
·脚本每执行一个函数,InstallShield返回一个数值来指示函数运行结果。如果你要在该脚本后面部分要用到该函数的返回值,则将该值赋给一个数值型变量。 3.6 GetSystemInfo
语法:GetSystemInfo (nItem, nvResult, svResult); 说明:GetSystemInfo函数检索目标系统的信息。 参数:
第一个参数,nItem,用来指定要检索的信息的类型。参照下面这个你可传递给该参数的常量列表来检索系统信息。注意使用特定的常量时(如DISK_TOTALSPACE_EX),你必须在调用该函数前为参数nvResult和/或svResult指定附加信息。
系统信息返回给nvResult和/或svResult。数值型数据返回给nvResult。字符串型数据返回给svResult。下表列出了你可以传递给nItem的各个常量的返回值类型。 -------------------------------------------------------------------------------- nItem:BOOTUPDRIVE
nvResult:启动驱动器的 ID,1=A:,2=B:,3=C:。可以通过给该数值加上64(十进制)将该数字转换为相应的驱动器字符,然后给该值设置一个字符串变量。使用下面的语法进行转换: svResult[0]=64+nvResult;
svResult:返回启动驱动器的驱动器指示符(驱动器字符后随一个冒号)。 -------------------------------------------------------------------------------- nItem:CDROM
nvResult: TRUE或FALSE指示CD ROM是否可用。 SvResult: N/A
-------------------------------------------------------------------------------- nItem: COLORS
nvResult:返回用户系统可用颜色数目。结果从对目标系统的视频驱动器检索而得,而不是从视频卡得到。如果该卡支持256色但驱动器只能处理16色,返回的颜色值是16。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库内部库函数 - 图文(3)在线全文阅读。
相关推荐: