7
実行時に[DllImport]パスを指定するにはどうすればよいですか?
実際、C#プロジェクトにインポートして関数を呼び出すC ++(動作)DLLを取得しました。 DLLへのフルパスを指定すると、次のように機能します。 string str = "C:\\Users\\userName\\AppData\\Local\\myLibFolder\\myDLL.dll"; [DllImport(str, CallingConvention = CallingConvention.Cdecl)] public static extern int DLLFunction(int Number1, int Number2); 問題は、それがインストール可能なプロジェクトになることです。そのため、ユーザーのフォルダーは、実行されるコンピューター/セッションによっては同じではありません(例:pierre、paul、jack、mum、dad、...)。 だから私は私のコードを次のようにもう少し一般的にしたいと思います: /* goes right to the temp folder of the user "C:\\Users\\userName\\AppData\\Local\\temp" then go to parent folder "C:\\Users\\userName\\AppData\\Local" and finally go to the DLL's folder "C:\\Users\\userName\\AppData\\Local\\temp\\myLibFolder" */ string str = …