发布后运行exe时出错:“此程序可能未正确安装”

时间:2013-01-28 12:33:46

标签: c# forms publishing

为什么在我发布我的项目后,我不能在关闭项目后运行我的exe(你在“Debug”文件夹中找到的那个)而不会收到此错误消息? - 因此不使用我发布的项目,仍然只使用exe

我创建了一个测试项目,只是为了测试是否是这种情况,每次都会发生这种情况。

  • 创建一个新的Windows项目。
  • 构建它。
  • 转到调试文件夹。
  • 将exe复制到桌面
  • 运行程序

  • 这样就会打开一个空白表格。

  • 现在关闭它。
  • 并且再次出现错误消息。

你怎么摆脱这个?我已经读过你应该在你的清单上添加东西等,但肯定有一个更简单的方法吗?我在Windows 7 64位计算机上使用Visual Studio 2008。

编辑:

我找到了问题的解决方案。发生这种情况的原因是因为我的项目名称中有“安装程序”或“设置”这个词,你能相信吗......这样的事情可能会像这样影响项目。

我发现这个问题已经在这里得到解答How to prevent “This program might not have installed correctly” messages on Vista 这确实是该计划实现这一目标的原因。

4 个答案:

答案 0 :(得分:10)

这是因为项目的名称中包含“Installer”或“Setup”字样。 创建一个没有这些单词的名称的项目解决了这个问题。 (确实是一个非常奇怪的问题)

指向类似问答的链接here

答案 1 :(得分:3)

使用此类内容为您的应用添加清单:

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
  <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> 
      <application> 
        <!--The ID below indicates application support for Windows Vista --> 
          <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/> 
        <!--The ID below indicates application support for Windows 7 --> 
          <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> 
      </application> 
    </compatibility>
  </assembly>

答案 2 :(得分:0)

Windows似乎认为您的程序是安装程序。有一个page in the MSDN,其中包含有关Windows为何将您的应用程序视为安装程序的信息。

也许this question的答案会帮助您找到答案?

答案 3 :(得分:0)

关闭UAC适用于Windows 7.您不需要重命名您的应用。

  1. 按开始按钮,然后输入&#34; uac&#34;
  2. 打开&#34;用户帐户控制设置&#34;
  3. 将滑块一直拖到底部
  4. 重启电脑
  5. 再次打开您的.NET应用
  6. 但是,如果您无法关闭UAC(例如,在商业机器上),那么最好的方法是重命名您的应用以删除&#34;设置&#34;或者&#34;安装人员&#34;来自清单中的[AssemblyTitle]字段。