4

C# 実行可能ファイルで使用されるクラスを含むマネージ DLL (C++/CLI で記述) があります。クラスのコンストラクターで、DLL を参照する実行可能ファイルのフル パスにアクセスする必要があります。実際のアプリでは、Application オブジェクトを使用してこれを行うことができますが、マネージ DLL からどのように行うことができますか?

4

2 に答える 2

15
Assembly.GetCallingAssembly()

また

Assembly.GetExecutingAssembly()

また

Assembly.GetEntryAssembly()

必要に応じて。

次に、 Location または CodeBase プロパティを使用します (どれか覚えていません)。

于 2008-09-23T13:53:50.730 に答える
5

@leppie: ありがとう - それは私が必要としていたポインターでした。

今後の参考のために、これは C++/CLI で機能する実際の構文です。

String^ appPathString = Assembly::GetEntryAssembly()->Location;

GetExecutingAssembly()DLLの名前を提供

GetCallingAssembly()System.Windows.Forms のようなものを返しました

GetEntryAssemblyGetModulePath()Win32の場合と同様に、フル パスを返しました。

于 2008-09-23T15:26:25.263 に答える