首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

2013-02-24 
InstallShield制作软件安装包:在安装过程中启动一个c#写的程序************** 异常文本 **************Sys

InstallShield制作软件安装包:在安装过程中启动一个c#写的程序

************** 异常文本 **************System.IO.FileNotFoundException: 未能加载文件或程序集“MySqlBackup, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。文件名:“MySqlBackup, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”   在 MySqlBackupDemo.FrmLogin.btnSure_Click(Object sender, EventArgs e)   在 System.Windows.Forms.Control.OnClick(EventArgs e)   在 System.Windows.Forms.Button.OnClick(EventArgs e)
 1:在InstallShild里面进行以下设置1)添加相应的文件

InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

2)启动外部程序的配置

InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

但出现以下错误:

************** 异常文本 **************
System.IO.FileNotFoundException: 未能加载文件或程序集“MySqlBackup, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。
文件名:“MySqlBackup, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”
   在 MySqlBackupDemo.FrmLogin.btnSure_Click(Object sender, EventArgs e)
   在 System.Windows.Forms.Control.OnClick(EventArgs e)
   在 System.Windows.Forms.Button.OnClick(EventArgs e)

 

后来我找到了一款程序集合并的工具 ILMerge(来自微软)

具体操作如下:

1.  下载ILMerge

到http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-B4AD-4EAE-87CF-B14AE6A939B0&displaylang=en下载ILMerge,

才600多K,一下子就下好了.

InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

2~3 :安装ILMerge,步骤略4.  在安装ILMerge的目录下,就一个ILMerge.exe文件而已,我们等会就是用它打包程序的.

InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

5.为了演示,我重新建了个工程,最后生成的是 MySqlBackupDemo.exe和 MySql.Data.dll文件,

其中newDll是Main.exe 中要引用的Dll文件,为了演示方便,我将它们都复制到了ILMerge的目录下,现在我们就试着用ILMerge将newDll和Main.exe文件打包起来吧.

 InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

6. 然后进入dos窗口,进入ILMerge目录,然后执行下面代码:

  ILMerge.exe /ndebug /target:winexe /out:newclient.exe MySqlBackupDemo.exe /log MySql.Data.dll

 

7.ILMerge运行时的窗口,此时它正在努力的将MySqlBackupDemo.exe和MySql.Data.dll文件捆绑在一起:

        InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

  8.DOS窗口关闭后,我们在去ILMerge目录下看看      此时已经生成好了我们想要的newclient.exe文件,它就是Main.exe和newDll.dll的结合体啦,InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

        InstallShield打造软件安装包:在安装过程中启动一个c#写的程序

 

热点排行