Visual Studio C#-编译应用程序?
在过去的一周里,我用C#学习并编写了一个小型个人应用程序。我使用了dotnetbar,当我在我的机器上调试时,一切都运行良好,但我想将所有内容编译成一个可执行文件,并使所有内容都正常工作 我被告知在VisualStudio中编译的方法是构建解决方案,将文件放入bin/release或bin/debug中。我在发布模式下构建了解决方案,运行了应用程序,一切正常,但当我将其转移到另一台计算机进行测试时,没有打开任何内容,大约30秒后出现错误 我假设它是dotnebar,所以我用一个按钮做了一个新项目,在另一台计算机上测试了它,它成功了。我从dotnetbar添加了一个ButtonX,并对其进行了测试,但它没有打开,甚至没有错误消息Visual Studio C#-编译应用程序?,c#,compiler-construction,compilation,reference,C#,Compiler Construction,Compilation,Reference,在过去的一周里,我用C#学习并编写了一个小型个人应用程序。我使用了dotnetbar,当我在我的机器上调试时,一切都运行良好,但我想将所有内容编译成一个可执行文件,并使所有内容都正常工作 我被告知在VisualStudio中编译的方法是构建解决方案,将文件放入bin/release或bin/debug中。我在发布模式下构建了解决方案,运行了应用程序,一切正常,但当我将其转移到另一台计算机进行测试时,没有打开任何内容,大约30秒后出现错误 我假设它是dotnebar,所以我用一个按钮做了一个新项目
为什么会这样?该程序是否需要随dotnetbar DLL一起提供,或者我是否可以用应用程序编译它们 是的,需要包括所有依赖项。。。无法将它们链接到程序集中。我假设这个dotnebar(从未使用过)可能已安装到您的GAC中。如果没有将相应的.dll复制到发布文件夹中,则需要将程序集引用上的“复制本地”设置更改为true。这将把它复制到输出文件夹,这样在部署时就可以使用它 是的,需要包括所有依赖项。。。无法将它们链接到程序集中。我假设这个dotnebar(从未使用过)可能已安装到您的GAC中。如果没有将相应的.dll复制到发布文件夹中,则需要将程序集引用上的“复制本地”设置更改为true。这将把它复制到输出文件夹,这样在部署时就可以使用它 看起来可能缺少一些.dll文件,这些文件应该与发行版位于同一文件夹中。通常,您需要release文件夹中的所有文件才能正确运行应用程序(因为您可能编写的某些文件可能刚刚创建为DLL并在运行时链接)。看起来可能缺少一些.DLL文件,这些文件应与release位于同一文件夹中。通常,您需要release文件夹中的所有文件才能正确运行应用程序(因为您可能编写的某些文件可能刚刚创建为DLL并在运行时链接)。请查看DotNetBar中的此信息。您需要在Visual Studio中复制文件或使用 从上述站点: DotNetBar for WPF与您的应用程序非常简单,只需包含 与应用程序位于同一文件夹中的DotNetBar程序集 可执行文件。您只需要分发已引用的程序集 在你的项目中 可包括以下组件: DevComponents.WpfRibbon.dll DevComponents.WpfEditors.dll DevComponents.WpfDock.dll DevComponents.WpfSchedule.dll
编辑:
根据您的评论,您可以尝试制作一个或使用类似的内容。我个人还没有试过。看看Dotnebar网站上的这些信息。您需要在Visual Studio中复制文件或使用 从上述站点: DotNetBar for WPF与您的应用程序非常简单,只需包含 与应用程序位于同一文件夹中的DotNetBar程序集 可执行文件。您只需要分发已引用的程序集 在你的项目中 可包括以下组件: DevComponents.WpfRibbon.dll DevComponents.WpfEditors.dll DevComponents.WpfDock.dll DevComponents.WpfSchedule.dll
编辑:
根据您的评论,您可以尝试制作一个或使用类似的内容。我个人还没有试过。不过还是有可能的。我下载了一些使用dotnetbar的应用程序,但它们只是一个可执行文件。很可能您已经安装了它们,或者您下载的应用程序使用的是代表您安装它们的引导安装程序。在任何一种情况下,.NET都不支持链接,这些依赖项必须以某种方式存在,这两种方式都不支持。。。我听说它使用了某种依赖性编译器,消除了对外部文件的需要。是的,有一些第三方工具,如remotesoft()中的Salamander.NET,但它不是.NET直接支持的工具。我明确地排除了提及它,因为(依我看)它几乎总是一件不必要的事情,因为.net中的依赖系统非常灵活,尽管这样做是可能的。我下载了一些使用dotnetbar的应用程序,但它们只是一个可执行文件。很可能您已经安装了它们,或者您下载的应用程序使用的是代表您安装它们的引导安装程序。在任何一种情况下,.NET都不支持链接,这些依赖项必须以某种方式存在,这两种方式都不支持。。。我听说它使用了某种依赖性编译器,消除了对外部文件的需要。是的,有一些第三方工具,如remotesoft()中的Salamander.NET,但它不是.NET直接支持的工具。我明确排除了提及它,因为(依我看)它几乎总是一件不必要的事情,因为.net中的依赖关系系统非常灵活。您确定您测试的另一台计算机安装了相应版本的.net Framework吗?无法创建不需要安装.NET Framework的.NET应用程序。是的,我尝试使用dotnetbar dll对其进行测试,结果成功,所以唯一的问题是我需要包含dll,我希望在应用程序中安装。您确定您测试的另一台计算机安装了相应版本的.NET Framework吗?没有办法创建一个不需要安装.NET Framework的.NET应用程序。是的,我试过了