题
我用VS2008创建了一个ClickOnce解决方案。 我的主项目引用了另一个将COM dll引用为“链接”的项目。
当我在VS中构建我的解决方案时,来自其他项目的dll会移动到我的bin文件夹中,但是当我发布并启动项目时,这些文件不会出现在我的Local Settings \ Apps \ 2.0 ...文件夹中。
我知道我可以添加其他项目的每个dll作为我的主项目的参考,但我想要一个更清洁的解决方案......
有可能吗?
解决方案
首先直接将这些文件添加到项目中。 然后转到应用程序属性 - >发布 - >申请文件
选择“显示所有文件”如果你没有看到你需要的文件,然后设置他们的 将状态发布到“包含” NOT“包括(自动)”。这很重要,或者不会添加。
请注意,如果您更新文件,则必须将其删除并重新添加 并再次设置其发布状态。这是一个小错误。
有关详细信息,请参阅我之前的一个问题: ClickOnce - 覆盖内容文件
其他提示
您需要打开“应用程序文件”。项目的“发布”选项卡中的对话框。从那里,您可以设置每个文件的发布类型(包括,先决条件等)。
如果它是非托管DLL,则需要将实际的.dll作为文件添加到项目中,并将其构建操作标记为“数据”。然后,您可以将该文件的“发布类型”设置为“包含”。
我遇到了同样的问题......在通过很多选项之后解决这个问题的唯一方法是将这些dll添加到References。
它有效,但我希望将来有一个更清洁的解决方案。
不隶属于 StackOverflow