2013-01-09 12 views
5

私はサードパーティのDLL - DocumentFormat.OpenXml.dllを使用している "DocumentHashcode"という名前のコンソールアプリケーションを使用して1つのツールを作成しました。.netの第三者dllの名前を変更します。

私は展開するときに、アプリケーションを実行するためにDocumentHashcode.exeDocumentFormat.OpenXml.dllを使用しています。

DocumentFormat.OpenXml.dllからCATBldHashCodeSupporterDll.dllに名前を変更します。誰もこれを達成する方法をアドバイスできますか?

+0

なぜOpenXMLを使用しているのかを隠しているのですか? – alzaimar

+0

実際に私は別のクライアントが使用するツールを作って、独自の名前を付けたいと思っています。あなたはそれについて何か考えがありますか? – Alpa

+1

あなたはここで答えを見つけるかもしれません:http://stackoverflow.com/questions/4683913/renaming-icsharpcode-sharpziplib-dll – alzaimar

答えて

3

アセンブリを手動でロードする必要があります。最も簡単な方法は、JITerがDocumentFormat.OpenXml名前空間をロードする前にロードすることです。手動でこのようにそれをロードすることができます。

var dllPath = Path.Combine(Directory.GetCurrentDirectory(), "reNamed.dll"); 
Assembly.LoadFile(dllPath); 

また、あなたはあなたにJITerはそれを見つけるために失敗した後、名前を変更したDLLをロードする機会を与える、AppDomain.AssemblyResolve eventに耳を傾けることができます。

1

また、DLLファイルを新しい名前で再アセンブリすることもできます。 詳細については、最後の答えStackoverflow:Renaming ICsharcode-dllを確認してください。

0

少し汚れても構わない場合は、テキストエディタを使用して.csprojファイルを変更できます。あなたの.dllは、例えば、XR-CommInterop.dllある場合は、のようないくつかのXMLを見つける必要があります。

<Reference Include="xr-CommInterop, Version=3.0.0.0, Culture=neutral, processorArchitecture=AMD64"> 
    <SpecificVersion>False</SpecificVersion> 
    <HintPath>C:\Mypath\xr-CommInterop.dll</HintPath> 
</Reference> 

あなたが最初のXR-CommInteropを変更した場合(参考に「=含める...)ただCommInteropへと

関連する問題