C# 項目引用DLL的三種方式

1.直接放在項目exe同級目錄

2.設置簽名后 放在系統C:\Windows\assembly文件下,不設置簽名,放不進去 key值密碼隨便設置,Win7以上系統微軟設置了非管理員權限不能操作權限控制,對於電腦控制比較嚴格的公司,不推薦此方式

C# 項目引用DLL的三種方式

3.指定目錄 參考https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/dependentassembly-element

3.1第一種probing設置 exe所在的子目錄下(temp文件夾下,多個目錄分號隔開)

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <probing privatePath="Temp" />
      </dependentAssembly>
    </assemblyBinding>

3.2第二種 href連接地址在exe所在子目錄下時,無需設置簽名publicKeyToken和culture

                 href連接地址在其他目錄下時,需設置簽名publicKeyToken和culture,其中publicKeyToken的值為註冊在assembly下的哪個id值

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>      
        <assemblyIdentity name="PubString" publicKeyToken="2fa87c7e0b7db672" culture="neutral" />
        <codeBase version="1.0.0.0" href="D:\losedguest\MyDemo\Net\OutDLLTest\OutDLLTest\bin\PubString.dll" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>