2012-08-06 58 views
0

有什么办法可以让我的项目(使用IO,OLEDB等多种形式)在未安装任何C#软件的计算机上工作?在不同的计算机上运行我的项目(Windows窗体)c#

我需要让我的项目从一个EXE文件运行。我知道我有一个exe文件Project/bin/release/Debug,它运行在安装了C#express软件的计算机上。

如何将我的项目导出到客户端计算机?

此外,是否有任何公共和免费的安装产品(用于查找文件和文件夹等任务)?

+0

你需要部署正确的.DLL,如果我没有弄错,如果它不起作用,会有一个自动的对话框弹出,解释它缺少一些框架并提示用户下载.net框架。你看看创建.MSI我认为这将包括/嵌入必要的.DLL的和依赖项的需要在不同的机器上运行你的应用程序 – MethodMan 2012-08-06 17:16:57

回答

4

是的,当然!

在大多数情况下,您应该能够简单地将您的可执行文件(在bin目录中找到)复制到目标机器。在该文件夹中可能还需要复制一些其他必需/有用的文件(如.exe.config或.pdb文件,或者如果您的程序被拆分为多个项目,甚至可能包含.dll文件)。如果怀疑复制一切可能会起作用 - 最糟糕的是,其中一些文件不需要(例如.vshost文件)。

您的目标机器需要安装您定位的版本(例如2.0,3.5,4.0等)的.Net框架。在很多情况下,这已经被安装了(特别是在.Net 2.0的情况下),如果不是,那么通常这些可以通过Windows更新来安装,或者快速搜索“.Net版本X安装程序”应该做的伎俩。如果您尝试在未安装所需.Net框架版本的计算机上运行应用程序,则应该获得相当直接的错误消息。

如果你觉得到它,然后是额外的东西,你可能希望将软件分发到客户端的时候做的,比如

  • 大厦在Release模式
  • 创建instaler
  • 使用部署ClickOnce

但是,上述应该让你开始。

+0

错字:创建一个instaler。 – 2012-08-06 17:30:55

+0

@爱我还有一个问题。'''Microsoft.ACE.OLEDB.12.0'提供者没有在本地机器上注册。'它会解决,如果我将安装办公室? – Noam650 2012-08-06 17:40:25

+0

@Justin我还有一个问题。“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册。如果我将安装办公室将解决? – Noam650 2012-08-06 17:56:05

2

您可以右键单击该项目的节点发布它,然后将其安装在其他机器上。 请参阅clickonce

2

您只需在目标计算机上安装.Net Framework。

0

对于开发/ deployement是必需的。整个框架是必需的。 Evrything有它自己的角色(为了他们的设计目的)。你不能跳过它们。但是,是的,您可以通过安装或利用第三方环境来最小化要求。由于我们都知道VS是许可产品,并且需要1000美元的$$$,但是可以免费下载和分发框架。同样为了开发符合最低要求的C#应用​​程序,您可以使用icsharp。它的轻量级和免费使用.Net IDE ..

0

你必须安装一个与你开发你的c#应用程序相同的.net框架,你可以从你的电脑上找到它,只需进入msvisualstudio安装文件夹,你就可以找到它,将它复制并安装到客户端PC 。

相关问题