当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > VB.NET如何在没有.NET框架的机器上运行

ASP.NET
FreeTextBox(版本3.1.6)在ASP.Net 2.0中使用方法
.NET 常用功能和代码小结
在 .NET Framework 2.0 中未处理的异常导致基于 ASP.NET 的应用程序意外退出
asp.net IList查询数据后格式化数据再绑定控件
asp.net sql存储过程
asp.net 简单实现禁用或启用页面中的某一类型的控件
asp.net(c#)获取内容第一张图片地址的函数
The remote procedure call failed and did not execute的解决办法
ASP.NET 在线文件管理
asp.net 读取并修改config文件实现代码
ASP.NET Cookie 操作实现
asp.net Silverlight中的模式窗体
Silverlight中动态获取Web Service地址
asp.net Silverlight应用程序中获取载体aspx页面参数
asp.net 水晶报表隔行换色实现方法
asp.net 获取Gridview隐藏列的值
手动把asp.net的类生成dll文件的方法
asp.net 使用ObjectDataSource控件在ASP.NET中实现Ajax真分页
动态指定任意类型的ObjectDataSource对象的查询参数
asp.net Md5的用法小结

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 41 ::
收藏到网摘: n/a

制作自己的安装程序

  在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环境的机器上。