快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

VB.NET如何在没有.NET框架的机器上运行

制作自己的安装程序

  在VS.NET中,我们可以通过建立\"Setup and Deployment Projects\"项目,异常灵活方便的把自己的.NET程序制作为Windows Installer文件。比如,我们可以很方便的定制下面这些选项:

  1.是否在桌面上放置快捷方法。

  2.注册自己的文件类型,可以通过双击该文件来使用自己的程序打开。


  3.注册表的处理

  在下面的MSDN站点,我们可以获得在VS.NET中通过Setup and Deployment Projects来制作自己的安装程序的示例:http://msdn.microsoft.com/library/en-us/vsintro7/html/vbconDeploymentScenarios.asp


发布.NET Framework

  .NET Framework 1.0提供一个用来重新部署.NET的exe文件:Dotnetfx.exe. 它包含了Common Language Runtime和其它.NET程序运行时必不可少的内容。

  我们可以从下面的站点下载该exe文件:http://msdn.microsoft.com/downloads/sample.asp?url=/MSDN-FILES/027/001/829/msdncompositedoc.xml

  同时,我们也可以在VS.NET安装CD或者DVD中找到该文件。

  我们可以通过多种方法来通过运行Dotnetfx.exe把.NET Framework部署到目标机器上:

  1.通过Microsoft Systems Management Server部署。

  2.通过Active Directory部署。

  3.使用第三方工具。

  详细的信息,我们可以参阅下面的文章:
http://msdn.microsoft.com/library/en-us/dnnetdep/html/redistdeploy.asp

制作自己的native安装程序

  假如我们要把自己的.NET程序发布到目标机器上,同时我们不确定该目标机器是否已经安装了.NET Framework, 那我们就需要自己设计一段unmanaged代码,来判定目标机器是否安装了.NET Framework, 假如没有,则运行Dotnetfx.exe安装.NET Framework, 然后利用Windows Installer安装自己的程序。

  在MSDN的下面网页上,我们可以获得一个使用unmanaged C++实现的安装程序和它的源代码:
http://msdn.microsoft.com/downloads/default.asp?URL=/code/sample.asp?url=/msdn-files/027/001/830/msdncompositedoc.xml

  1.在CSettings class中,通过读取\"settings.ini\",获得您自己的MSI安装文件和dotnetfx.exe的路
径,以及其他您自己的设置。(比如.NET Framework的语言版本)
  GetCaptionText(void)
  GetDialogText(void)
  GetErrorCaptionText(void)
  GetIniName(void)
  GetProductName(void)
  Parse()函数用来解析settings.ini文件。

  2.在Main.cpp文件中,全局函数FxInstallRequired()判定是否要在目标机器上安装.NET Framework. FxInstallRequired()会检测下面的注册表键值和dotnetfx.exe的版本和语言设置。
HKLM/SOFTWARE/Microsoft/.NETFramework/policy/v1.0

  3.假如需要安装.NET Framework, 在全局函数ExecCmd()中调用下面的命令silent安装dotnetfx.exe: dotnetfx.exe /q:a /c:\"install /l /q\"

  4.在ExecCmd()全局函数中调用下面的命令安装您自己的MSI文件:msiexec /i REBOOT=ReallySuppress

使用方式

  假如我们使用上面的native代码作为自己的安装程序,那么我们可以通过下面的步骤把自己的.NET程序和它结合在一起:

  1.把您自己的.NET程序制作成为Windows Installer (.MSI)文件。

  2.打开\"settings.ini\"文件,在\"Msi\" key中设置您自己的.NET程序的MSI文件路径和文件名;在\"FxInstallerPath\" Key中,设置dotnetfx.exe的路径。详细的参数信息,您可以从下面文章中得到:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetdep/html/redistdeploy.asp

  3. 把\"setup.exe\", \"settings.ini\", \"dotnetfx.exe\"和您自己的MSI安装文件,发送到目标机器上,然后运行\"setup.exe\", 安装程序会自动检测是否有.NET Framwork, 假如没有,将首先运行dotnetfx.exe。

总结

  通过上述步骤,您可以将自己的.NET程序成功的部署到没有安装.NET Framwork环境的机器上。

返回类别: 教程
上一教程: .Net可能将支持Linux
下一教程: .NET中的GAC

您可以阅读与"VB.NET如何在没有.NET框架的机器上运行"相关的教程:
· 把.NET程序部署到没有安装.NET Framwork的机器上
· 针对 .NET 框架的安全编码指南
· asp.net中的vb7中如何调用dll中的函数
· 如何在.net 中执行console命令
· 充分利用 .NET 框架的 PropertyGrid 控件
    微笑服务 优质保证 索取样品