更改COM引用“隔离”属性时,单击“应用程序格式不正确”

时间:2011-08-30 04:15:47

标签: c# visual-studio-2010 clickonce

使用ClickOnce部署我的应用程序。

只要我部署到开发机器,通过ClickOnce发布应用程序就可以正常工作。当我部署到非开发机器(缺少一些DLL和注册)时,我收到COM引用错误。

因此,为了解决COM问题,当我对我的应用程序进行一次更改时,ClickOnce更加失败:

在一个COM引用上,如果我将Isolated属性从false更改为true ...

  • ClickOnce发布很好
  • 启动应用程序会显示以下错误:“无法继续。应用程序格式不正确。”
  • 如果我在错误上单击“详细信息...”,我看到:“'threadingModel'属性无效 - 根据其数据类型'urn:schemas-microsoft-com,值'apartment'无效: asm.v1:ThreadingModelType' - 枚举约束失败。

经过一些谷歌搜索,似乎问题可能是一个字符问题!我尝试将清单中的“公寓”更改为“公寓”,我相信这可能会解决问题,但后来我又得到另一个错误,说清单上的计算哈希与预期哈希不匹配(显然是因为我修改了清单) )。

我的问题:

  • 首先,我如何确保ClickOnce创建正确形成的清单而不会出现此案例问题(如果这是所有问题)?这可以避免吗?
  • 其次,如果我不得不忍受这个问题,我怎样才能在发布后修改清单?
  • 第三,有没有办法解决ClickOnce的COM注册问题而不修改Isolated属性?
  • 第四,你是否怀疑我在做导致这个问题的线程方面做了一些奇怪/异常的事情?

0 个答案:

没有答案