![](/img/trans.png)
[英]Calling unmanaged C++ library (dll) from C# : How to properly pass data between managed and unmanaged code
[英]calling managed c# component from unmanaged c++ code, how do i define config
我想从非托管C ++服务调用C#组件。 我需要设置C#组件期望的配置项。 config应该是什么名字,应该放在哪里。
例如。 parentfolder \\ cplusplusservice.exe
anotherfolder \\ csharp.dll
我需要csharp.dll.config或等效文件。
谢谢,
本文介绍如何在c#中使用配置文件:
http://www.devasp.net/net/articles/display/679.html
本文概述了如何从非托管c ++调用托管c#组件(反之亦然)以及一些帮助程序类:
http://www.codeproject.com/KB/mcpp/unmanaged_to_managed.aspx
.config文件的名称必须与应用程序的名称相同。 当非托管代码首次调用托管代码时,将创建一个AppDomain,该AppDomain控制着哪个配置文件以及从何处加载。
您将需要手动将.config文件复制到输出目录,并以应用程序名称命名它,或者创建一个后构建版本。
基本上,与适用于纯托管应用程序的.config文件所在位置的规则相同,它们适用于加载托管代码的非托管应用程序。
这取决于托管托管代码的AppDomain的创建方式。
例如,如果将托管代码公开为COM,它将被加载到默认的AppDomain中,并且配置文件将与可执行文件位于同一目录中(在您的情况下为parentfolder \\ cplusplusservice.exe.config)。
如果您自己创建AppDomain,则可以控制配置文件的位置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.