2010-04-17 46 views
32

我们在Visual Studio解决方案(其他项目类型 - >安装和部署 - >安装项目)中有一些安装项目。该项目具有另一个库类型项目,其中安装类名为InstallationCore,如项目输出。在用户操作中,我打电话给InstallationCore安装程序的安装和卸载功能。DragDrop注册在安装项目中没有成功

InstallationCore具有与用户交互的窗体窗体。在窗体中,我使用拖放功能将树视图中的文本拖放到文本框。
但在行:

txbUserName.AllowDrop = true; 

我得到JIT调试器的错误:

未处理的异常发生
的DragDrop注册没有成功
System.InvalidOperationException:的DragDrop注册没有成功

之后的长堆栈跟踪。
重要的是,当我从测试项目运行安装程序功能时,错误没有发生,一切正常。仅在运行.msi软件包时发生错误。

有什么建议吗?

+3

原因在这里描述:http://stackoverflow.com/questions/135803但我不知道该解决方案是否可以在安装项目中应用。 – dtb 2010-04-17 19:32:45

+0

+1 @dtb,这是完全正确的。有一个可能的解决方案[这里](http://www.ozcandegirmenci.com/post/2010/08/Visual-Studio-Setup-Project-OLE-Call-And-Dialog-Show-Support.aspx)。 – ssamuel 2011-11-07 20:16:37

回答

0

请尝试清理BIN目录。

0

请从您的解决方案目录和重建解决方案中删除您的所有Obj文件夹。请记住不建立只重建。由于Build仅在上次成功构建中准备新的更改,因此请使用“重新构建”选项。

0

构建: - 构建文件,并替换或覆盖所有文件,无论它们是否存在于bin文件夹中。

重新构建: - 如果没有修改,则使用现有文件。

清理: - 删除箱位置的所有文件。

推荐使用Clean,然后Build,如果您不需要引用并构建相关文件,则始终使用重新构建。

除此之外,在运行中,(Windows按钮+ R),进入临时文件夹(在运行中键入%temp%)有一个与.NET Temporary文件相关的文件夹,如果无法删除然后关闭Visual Studio,然后尝试删除它。 这是在我们每次构建或重新构建应用程序时创建的,它有时会产生问题。

1

你有任何多线程导致此问题。如果是这样,找到他们,迫使他们STA

trd = New Threading.Thread(AddressOf ThreadTask) 
trd.IsBackground = True 
trd.SetApartmentState(ApartmentState.STA) 
1

我删除我的目录解决了这个问题。

相关问题