看了它的help,不大明白,可能E文太差,呵呵...
请问有没有具体的文章推荐给我?

解决方案 »

  1.   

    你是否想过为自己编的应用程序创建一个专业水准的安装程序?其实这很简单。在Visual C++5.0中提供了InstallShield Free Edition,可以帮助你轻易完成安装程序的创建而不用手工编写一行程序。下面以安装笔者自编的一个显示系统信息的程序为例介绍InstallShield的使用。
        进入InstallShield,双击Project窗口上的Project Wizard图标,出现Project Wizard-Welcome对话框。
        在Application Name中填入应用程序名称,这里填入Show System Information;在Application Type中选择Software Development Application;在Application Version中输入应用程序版本号,这里填入1.0;在Application Executable中选择需要安装的程序,这里选择Show.exe。
        单击Next按钮,出现Project Wizard-Choose Dialogs对话框。其中的选项是安装程序运行进程中依次出现的对话框,如显示Welcome屏幕,显示软件许可协议,选择安装目录,选择安装类型等等。这里不选择Use Information选项。可以单击Preview了解对话框内容。单击Next按钮,出现Project Wizard-Choose Target Platforms对话框。这里出现安装程序可以运行的操作系统平台,全选时可以在Windows95、Windows NT等平台下运行,但安装程序较大。这里只选Windows95。
        单击Next按钮,出现Project Wizard-Specify Languages对话框。InstallShield Free Edition只提供了英语,要想使用中文,必须购买InstallShield专业版。
        单击Next按钮,出现Project Wizard-Specify Setup Type对话框。这里需要选择安装类型,这里选择Typical。
        单击Next按钮,出现Project Wizard-Specify Component对话框。组件类型是主要程序区域的定义,可以给安装程序添加所需的新组件类型,如数据库应用程序可能需要添加数据库文件类型。这里删除Example Files组件。
        单击Next按钮,出现Project Wizard-Specify File Groups对话框。创建的文件组可以使所需的所有文件能一次拷贝完成。文件组可以穿过组件类型的界线。这里删除Program DLLs、Example Files。单击Next按钮,出现Project Wizard-Summary对话框。单击Finish按钮。InstallShield使用如上的参数创建安装程序。此时右边出现的是创建安装程序的C++代码。如有特殊需要,可以修改代码以完成指定的任务。
        下面进行文件的添加和各种组件的安装。
        单击Component选项卡,出现Components-Program Files对话框。双击相应条目可以出现Properties对话框,可以修改相应的值。其中Description将会在Custom Installation中显示有关组件的提示信息;Status Text将在拷贝文件过程中显示有关信息;Installation让你选择如果有关组件已经存在时应采取的措施,如无条件覆盖或用较新版本覆盖;Destination让你选择安装目录,如一般Shared DLLs安装在Windows System目录下;Required Components让你选择安装此组件时必须安装的其他组件,例如安装Program Files组件时必须安装Shared DLLs组件;Included File Groups中要加入具体的组件。本例中有三个组件,具体的设置如表1。
        下面向文件组中添加文件。单击File Group选项卡并单击Program Executable Files,出现Links选项。用鼠标右键单击,出现一快捷菜单,选择Insert Files,加入应用程序Show.exe。在Shared DLLs中添加MFC42.DLL和MSVCRT.DLL(在Windows System目录下)。在Help Files中加入相应的帮助文件。
        随后要做的是定义资源,以给用户提供一些信息。选择Resource选项卡,将其改为表2形式。
        最后要做的是确定安装介质。
        单击Media选项卡,单击Media Build Wizard添加介质,出现Media Build Wizard-Media Name对话框,在Media Name中填入My Media。单击Next,出现Media Build Wizard-Disk Type对话框,选择3.5"Diskette-1.44Mbytes选项。单击Next,并选Full Build,出现Media Build Wizard-Tag File对话框。在Company Name中输入III Corporation,在Application Name中输入System Information。单击Next,出现Media Build Wizard-Platforms对话框,选择支持平台为Windows95。单击Next,检验所用的设置。单击Finish,InstallShield将完成安装程序的创建。
        到此,你自己的安装程序就创建完毕。试试看,怎么样? 
     
         表1 组件 属性 值 
    Program Files Description Files required to run the program 
      Status Text Copying Program Files 
      Installation   
      Required Components Shared DLLs 
      Included File Groups Program Executable Files 
    Shared DLLs Description DLLs used by all the programs 
      Status Text Copying Shared DLLs 
      Installation   
      Description <WINSYSDIR> 
      Included File Groups Shared DLLs 
    Help Files Description Files that help you know how to use the program 
      Status Text Copying Help Files 
      Installation   
      Included File Groups Help Files 表2 标识 值 
    COMPANY.NAME III Corporation 
    PRODUCT.KEY Show.exe 
    PRODUCT.NAME System Information 
    UNINST.DISPLAY.NAME System Information 
    UNINST.KEY Show.exe 
      

  2.   

    用InstallShield制作专业Windows安装软件[1999-06-01] 苏贵洋
     --------------------------------------------------------------------------------
     
      InstallShield可以说是软件安装的最好制作工具。其简单的操作、完全可视化的界面、方便的调试功能、多平台(Windows3.1, Windows95, WindowsNT3.5, Windows NT4.0 )语言(中文、各种西文)的支持使它几乎成为了安装制作的标准。难怪微软在它的拳头产品Visual C++4.X中开始,就以捆绑的形式包括了InstallShield3。而今,随着日月的推移,InstallShield更是羽翼丰满,又陆续推出了InstallShield Professional 5.X(包括East Edition,West Edition)和InstallShield 6.0,功能更为强大,操作更为简便。对于Shareware软件的制作者,包装上一个漂亮的安装程序,实在是非常必要。本文简要探讨一下用InstallShield制作安装软件的方法,希望对感兴趣的朋友有所帮助。  在InstallShield的各种最新版本中,其专门制作的East Edition,可应用于汉语(GB、BIG5)、英语、印度尼西亚语、日语、韩语、俄语、土耳其语、泰国语等多语种。本文便以InstallShield East Edition 5.1为探讨对象进行讨论。InstallShield的其它语种版本的操作和East Edition几乎完全相同。 
      进入InstallShield East Edition 5.1后便是两个“向导”面对你。  习惯用VB的朋友可以用VB5 Project Wizard,它需要你的系统中安装了VB5。  更为常用的是Project Wizard,它可以定制更为普便适用的安装程序。进入Project Wizard后如图1:在第一栏中写入你的程序的名字,第二栏中写入公司的名字,在第三栏中选择开发程序使用的根据,第四栏中选择程序的种类,最后一栏中填入程序的可执行文件的完整路径和名字。单击下一步,进入选择定制对话框:安装自己的喜好选择希望安装过程进行时出现的对话框,按Priview键可以预览一下相应对话框的效果。接下来是选择要安装目标平台。也即程序将被运行在什么平台之上。InstallShield共提供了四种平台供选择(Win31, win95, WinNT3.5, Windows NT4.0 )。然后是多语种支持,也就是安装时可以提供的语言支持。再向下依次是安装类型选择、指定构成成份、指定文件组,最后是所有选项的概括。完成选择后便可得到你自己定做的Project,进入InstallShield的可视化编程环境。  下面让我们一步一步地完成我们的制作。  整个InstallShield的可视化程度很高。支持鼠标右键的操作,在各个位置的鼠标右键可激活各种功能;编译、调试方便,简直是VC++这种大型程序的简写本,却又比VC++方便了许多。
      一、在左面的选项中选择Scripts。
      这是全部制作的核心部分,也是我们所最应集中精力攻克的小小关口。当然不更改Scripts中的源程序也能制作一个标准的安装程序,但如果能够控制Scripts的编程,整个安装程序的制作水准就可以达到一个新的高度,这也许是您与普通制作者区别的开始吧。其实InstallShield的Scripts非常类似于C和C++的程序编写,相信对大多数程序员来说是非常容易掌握的。而对于没有什么C和C++的基础的朋友来讲,看完这篇文章后,相信你也能很好地去制作自己的Scripts,因为它具有相当程度的重复性,更容易被“依葫芦画瓢”。  Scripts的布局同C语言非常类似。首先是头文件的包含,紧接着是字符串的定义、函数原形的说明、全局变量的说明。你可以做的是在此加上你的函数说明、全局变量的说明。  Scripts中遵循C的规则,同样有局部变量和定义。遵循C++的注释规则,可以用// 注释内容来进行单行注释,也可以用/* 注释内容 */来注释一块语句。所有的关键字、宏定义都以不同颜色的字体标出,非常直观。Scripts 的编程遵循结构化编程的思想,提供了大量类似Windows API的函数库供调用,每个宏定义都有详细的说明,每个函数除了详细地说明,解释每个变量的意义外,还都附有相应的例子,参考这些说明和例子,可以让新手在非常短的时间内上路。对用VC++开发过Windows程序的朋友来讲,简直就是一种6=2×3的转变而已,可以非常轻松地掌握。  在程序的最前段,是program…………………endprogram,它相当于C中的main() {……}主函数。后面是一个个子函数体的程序,排列顺序是按调用顺序排列。全部函数都非常简单易懂,并且一般不需太大改动。下面将几个常用、经常改动的函数加以说明。  (1) function SetupFolders()  function SetupFolders()  NUMBER nResult;  STRING szFolderDir;  begin  szProgramFolder = FOLDER_PROGRAMS^   SHELL_OBJECT_FOLDER; //建立程序组或快捷方式的位置szItemName = "眼部图象多功能处理系统"; //应用程序名称szProgram = TARGETDIR^'eye95.exe'; //可执行文件名szParam = "";  LongPathToQuote (szProgram, TRUE);//合并路径  LongPathToShortPath (szParam);//转为短路径,专为Win31和WinNT3.5而用  szCommandLine = szProgram + " " + szParam; //生成命令行  szWorkingDir = TARGETDIR;//工作路径  szIconPath = "";  nIcon = 0;  szShortCutKey = "";  nFlag = REPLACE;  AddFolderIcon (szProgramFolder, szItemName,   szCommandLine,  szWorkingDir, szIconPath, nIcon,  szShortCutKey, nFlag);  szProgramFolder = FOLDER_DESKTOP;  LongPathToQuote(szCommandLine, TRUE);if(SprintfBox( OK|CANCEL,"请选择:","%s","你想在桌面上创建快捷方式吗?")==6)   then  AddFolderIcon(szProgramFolder,szItemName,szCommand  Line,   szWorkingDir,szIconPath,nIcon,szShortCutKey,   nFlag);endif;szProgramFolder = FOLDER_PROGRAMS^ SHELL_OBJECT_FOLDER;szItemName="readme";szProgram = WINDIR ^ "notepad.exe";szParam = TARGETDIR^"readme.txt";LongPathToQuote (szProgram, TRUE);LongPathToShortPath (szParam);szCommandLine = szProgram + " " + szParam;AddFolderIcon(szProgramFolder,szItemName,   szCommandLine ,  szWorkingDir, szIconPath, 0,  szShortCutKey,nFlag );  nResult = CreateShellObjects( "" );  return nResult;  end;  其实这段程序说白了是对AddFolderIcon的一个应用而已。应用AddFolderIcon来在开始选单中添加程序组、程序项或在桌面桌面添加快捷方式等等。所以首先读一下AddFolderIcon的说明非常必要。它共有八个入口参数。第一个参数szProgramFolder是确定要在Win95中添加选单的位置(路径),例如  "C:\\WINDOWS\\STARTMENU\\PROGRAMS\\ACCESSORIES\\GAMES"。  而在Windows95和WinNT4.0中,还可以用系统的宏定义:FOLDER_DESKTOP(添加在桌面上)、FOLDER_DESKTOP(添加在开始选单中)、FOLDER_PROGRAMS(添加在开始-〉程序选单中)等。第二个参数为szItemName,即添加的图标的名称(应用程序的名称)。第三个参数szCommandLine相对繁琐一些。它为了指定可执行程序和它的命令行,或者在子目录下的全路径(仅适用于Windows95&winNT4.0)。szWorkingDir为工作路径,可为空:“”,或为TARGETDIR(目标路径)。szIconPath为图标路径,一般设为空:“”。nIcon为图标序数,即若应用程序有若干个图标,想显示那个,依次为0,1,2……。
      

  3.   

    http://www.yesky.com/20010128/154960.shtml
    一个简明的教程 ,很有用
      

  4.   

    szShortCutKey用来定义快捷键。nFlag用来指定图标的外观。如果在路径中包含长路径名,则必需用‘’或“”来包含,然后用LongPathToQuote函数来合并。当用于16位的Win31和WinNT3.5时,还应再调用一下LongPathToShortPath进行转换。如此便可创建程序组、程序项或快捷方式了。太麻烦了?没关系,如果您认为这一段操作实在麻烦,您完全可以略过,到Resource中去完成,详情请往后看。  (2)function SetupScreen()  begin  Enable( FULLWINDOWMODE );  Enable( INDVFILESTATUS );  SetTitle( "眼科多功能处理系统安装程序", 28,YELLOW );//修改字体和颜色  SetTitle( "眼科多功能处理系统", 0, BACKGROUNDCAPTION ); // 标题行的字体和颜色  Enable( BACKGROUND );  Delay( 1 );  end;  这儿主要是SetTitle (szString, nPointSize, nColor)函数的应用。  三个参数分别代表了所写字符串的内容、字体大小、文字颜色。  (3)function DialogShowSdWelcome()  NUMBER nResult;  STRING szTitle, szMsg;  begin  szTitle = "欢迎";  szMsg = "欢迎您光临 眼科多功能处理系统 安装程序!";  nResult = SdWelcome( szTitle, szMsg );  return nResult;  end;  在这个函数里写入您想制作程序的标题。  (4)function SetupRegistry()  NUMBER nResult;STRING szKey, szNumName, szNumValue, svNumValue;  NUMBER nType, nSize;  begin  szKey="Robert\\RobertSoftware\\Spirit\\Version";//自己的主键  szNumName = "TestValue";//键名  szNumValue = "12345";//键值  nType = REGDB_NUMBER;//类型  nSize = -1;//指定大小  RegDBSetKeyValueEx(szKey, szNumName, nType, szNumValue,nSize) ;//创建  nResult = CreateRegistrySet( "" );  return nResult;  end;  通过这种方法修改注册表,再辅以一些算法,可以投入很小但起到很好的加密程序的作用,您不妨一试! ?  (5)function DialogShowSdFinishReboot()  NUMBER nResult, nDefOptions;  STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;  NUMBER bOpt1, bOpt2;begin  if (!BATCH_INSTALL) then   bOpt1 = FALSE;//不选   bOpt2 = FALSE;//不选   szMsg1 = "%P 安装结束!\n";//%P代表安装程序名字。szMsg2 = "按结束键结束 %p 安装。";//提示信息szOption1 = "我想看自述文件。";   szOption2 = "我想现在就运行程序。";   nResult = SdFinish( szTitle, szMsg1, szMsg2,   szOption1, szOption2, bOpt1, bOpt2 );if(bOpt1) then   LaunchAppAndWait(WINDIR^"Notepad.exe",TARGETDIR^"readme.txt",WAIT);//如果选中,调用Windows的笔记本载入自述文件。  endif; if(bOpt2) then   LaunchApp(TARGETDIR^'eye95.exe',"");//如选中,立刻执行应用程序  endif;   return 0;  endif;  nDefOptions = SYS_BOOTMACHINE;  szTitle = "";  szMsg1 = "";  szMsg2 = "";  nResult = SdFinishReboot( szTitle, szMsg1,   nDefOptions, szMsg2, 0 );//由此控制决定是否重新启动计算机。  return nResult;  end;  这一段程序便是安装到最后,可以提示用户是否看自述文件、是否立刻启动程序运行、是否重新启动计算机。  Scripts最需要改动的地方可能就是这五个地方。其它则根据制作者自己的需要来做相应修改。
      二、修改File Groups
      双击相应的Examples Files、Help Files、Program DLLs、Program Executable Files、Shared Dlls,在相应的Links中,单击右键,可以插入一组文件、一个文件夹或一个文件。而在Examples Files、Help Files、Program DLLs、Program Executable Files、Shared Dlls中分别加入文件是为了在程序安装时的选项安装。更为简便的方法是在Tools中启动Launch Explorer,然后把所需的文件或文件夹拖拉到右面空白处即可。
      三、修改Components
      单击Program Files、Example Files、Help Files或Shared Dlls,在右面的表格中双击Include File Groups,在弹出的属性对话框里单击Add…,加入相应的文件组。
      四、修改Setup Types
      单击Compact、Typical或Custom,在右面的表格中选择各自包括的组成成份。  注:有了二、三、四项的操作,才能完成安装时的“典型安装、简洁安装和定制安装”的选择。
      五、修改Setup Files
      在Splash Screen-〉Language Independent中你会发现一个Setup.bmp文件,这个是系统提供给你的安装开始时的闪烁画面。你可以用你的封面替代这个setup.bmp。在Language Independent-〉Operating System Independent中,你会发现license.txt和infolist.txt。你可以将你的应用程序的说明、版权信息写入相应文件。
      六、修改Resource
      在Register Entires中,你可以添加你的键值。对Register Entires单击鼠标右键,单击New Entry,便可在右面的Register Set中加入自己的键值。  在Shell Objects中,有Explorer Shell和Program Manager Shell两个分类,分别是为了windows95、WinNT4.0和win31、winNT3.5设计的。在Explorer Shell中,又有Desktop、Start Menu、Programs、Startup的层次之分。你可以在任一层单击右键,插入您所需要加的快捷方式或文件夹。  单击快捷方式或文件夹,双击右面的表格选项,依次填入空白项,那么在您理想的目的地的文件夹或快捷方式便建好了。不要着急去按下Run Setup工具按钮,否则您会发现您运行后得到的并不完全是您所设计的!这是因为您少了:
      七、运行Media Wizard
      在Media栏,单击Media Build Wizard,按照提示一步一步执行,直至结束(而实际上您仅需连续按“下一步”按钮)。您完全可以再此基础上加上更多的更精彩的小花招,如:加密、安装拷贝时的不同的背景变换、制成一个自解包的安装文件、做一个带时间限制的试用版安装等等,InstallShield都可以满足您的需要。但这些小花招,基本都需要您对Scripts的熟练掌握,这些都是用简洁方式所不能控制的。  好了,您可以Run Setup了。怎么样?够不够专业?酷不酷?可不要把嘴乐歪了!
      

  5.   

    多谢各位热心相助,我已经在尝试用installshield for vc6了,遇到一些问题,我会在论坛上提出,请各位鼎立帮忙!