InstallShield 2008建立快捷方式时默认是不创建卸载程序的快捷方式到开始菜单的,如果要在开始菜单的程序组中建立快捷方式,就需要我们手工创建了。方法如下:

进入 Installtion Designer - InstallScript 视图,选取 Setup.Rul 。在右边的 InstalltionScript 窗格顶部的事件下拉菜单中选取“Move Data”,接着选取右边函数下拉菜单的“OnMoved”函数。InstallShield 自动在 Setup.Rul 的底部生成 OnMoved() 函数,将此函数改写为:

 

 

 
  
  1. function OnMoved()       
  2. string szApp, szCmdLine;       
  3. number nDelimiter;       
  4. begin      
  5. if( !REMOVEALLMODE ) then         
  6. // Find the delimiter         
  7. nDelimiter = StrFind( UNINSTALL_STRING, DISK1SETUPEXENAME ) + StrLengthChars( DISK1SETUPEXENAME );                   
  8. // Build app & quote         
  9. StrSub( szApp, UNINSTALL_STRING, 0, nDelimiter );       
  10. LongPathToQuote( szApp, TRUE );                   
  11. // Build command line         
  12. StrSub( szCmdLine, UNINSTALL_STRING, nDelimiter, StrLengthChars( UNINSTALL_STRING ) - nDelimiter );           
  13. // Create shortcut.         
  14. AddFolderIcon( FOLDER_PROGRAMS^"死亡阴影""卸载死亡阴影", szApp + szCmdLine, """", 0, ""REPLACE );       
  15. endif;    
  16. end;    

 

 

其中,AddFolderIcon 函数是创建卸载程序快捷方式的函数。FOLDER_PROGRAMS 参数是添加卸载程序的快捷方式到 Start\Programs 。如果在 Start\Programs 下建立有程序组文件夹,比如我建立了个“死亡阴影”的程序组文件夹,其参数写为: FOLDER_PROGRAMS^"死亡阴影" 。用“^”符号连接程序组文件夹的“Display Name”,而不是“Internal Name”(在“Shortcuts”视图中查看程序组文件夹的显示名称)。

与 FOLDER_PROGRAMS 参数相关的还有 FOLDER_DESKTOP 、FOLDER_STARTUP 和 FOLDER_STARTMENU 。它们分别在“桌面”、“开始启动菜单”和“开始菜单”建立卸载程序的快捷方式。

注意:如果“^”符号后面指定的程序组文件夹名称不存在,InstallShield将建立它,并将卸载程序的快捷方式放在里面。

 

          印第安

      2008年5月14日11:24:12