使用其他DLL的PInvoke DLL - ClickOnce问题

时间:2010-09-14 20:36:13

标签: .net dll clickonce pinvoke

我正在创建一个.NET DLL,它在非托管DLL上使用PInvoke充当包装器。我的问题是,如果我在使用单击一次时PInvoking一个引用其他DLL的非托管DLL,我需要包含哪些DLL以及使用该.NET Wrapper DLL的项目的部署?

涉及的文件:

  • 使用点击一次部署的项目
  • 包装非托管DLL的.NET DLL(称之为X.DLL)
  • X.DLL是一种非托管DLL
  • Y.DLL,它是由X.DLL
  • 调用的非托管DLL

部署后,我是否必须在点击中包含所有这些文件?只是.NET DLL?解释为什么会有所帮助:)

1 个答案:

答案 0 :(得分:3)

是的,你必须指定所有这些。或者至少确保它们以某种方式在目标上可用。

虽然可能会自动选择.NET dll(作为项目的一部分)。但您必须检查是否正确检测到非托管DLL,否则添加它们。

如果这是关于/ Sytem32 / DLL或共享的文件,您可能会遇到问题。您无法使用ClickOnce安装共享DLL,因此您必须复制到本地。然后希望它有效。