c#程序不必把dll放在exe目录下--app.config文件中添加dll程序集的查找目录

方法是使用应用程序配置文件,如下为配置文件的内容

同名的配置文件.exe.config (在项目中为app.config)
里面的内容:
<configuration>
    <runtime>
        <assemblyBinding  xmlns="urn:schemas-microsoft-com:asm.v1">
            <probing privatePath="Lib"/>
        </assemblyBinding>
    </runtime>    
</configuration>

其中Lib 是根目录下的目录存放dll 

注意:assemblyBinding节点的xmlns一般固定就为"urn:schemas-microsoft-com:asm.v1"。另外,上述方法仅限于.net的程序集(dll),至于com组件(dll)还不确定。至于一般的c封装api式的dll则可肯定不能用上述方法,不过使用[dllimp ........]特性加载这种dll时应该可以直接在特性的属性中设置路径,比上面的方法更方便。

你可能感兴趣的:(C#,程序集)