如何定义Interop * .dll的自定义路径

时间:2011-01-10 13:26:03

标签: dll interop managed-c++

那么,

我有 ActiveX(* .ocx)组件,我在托管C ++ / CLI项目中使用它:围绕ActiveX组件编写托管包装器[ NET有一个很棒的互操作服务:为我提供了genarated dll,所以我可以在我的托管代码中轻松使用它]

问题是Visual Studio(2008)会自动将生成的Interop * .dll 复制到目录,其中我的* .exe文件保留。但我想要全部放入我将Interop * .d添加到文件夹中......

假设我的目录结构是这样的:

D:\ MyProject \ Output \ MyProject.exe // 我的mamanged exe

D:\ MyProject \ Output \ Interop.XXXLib.1.0.dll // * Interop .dll

我想将Interop.XXXLib.1.0.dll放入新文件夹

d:\ MyProject的\输出\互操作性展示

并从该目录中使用它...我该怎么做?

祝福

PS:

到目前为止我发现在我的app.config文件中使用codeBase / probing标签,例如

<?xml version="1.0"?>
<configuration>
  <runtime>
     <assemblyBinding xmlns="urn:schemas-microsoft-com.asm.v1">
        <probing privatePath="Interops" />
     </assemblyBinding>
  </runtime>
</configuration>

但我没有在C ++ / CLI中工作

1 个答案:

答案 0 :(得分:0)

修复... Visual Studio 2008 C ++ / CLI自动创建名为 app.config 的配置文件。我使用程序集名称 MyProject.exe.config 更改了此名称,现在可以正常运行...有一个隐藏约定我认为 assembly.dll.config assembly.exe.config 命名模式,我不知道...