HANDLE Proc;
HMODULE hDLL;
hDLL = LoadLibrary(TEXT("mscoree.dll"));
if(hDLL == NULL)
cout << "No Dll with Specified Name" << endl;
else
{
cout << "DLL Handle" << hDLL << endl<<endl;
cout << "Getting the process address..." << endl;
Proc = GetProcAddress(hDLL,"GetRequestedRuntimeVersion");
if(Proc == NULL)
{
FreeLibrary(hDLL);
cout << "Process load FAILED" << endl;
}
else
{
cout << "Process address found at: " << Proc << endl << endl;
LPWSTR st;DWORD* dwlength; ;DWORD cchBuffer=MAX_PATH;
HRESULT hr=GetCORSystemDirectory(st,cchBuffer,dwlength);
if(hr!=NULL)
{
printf("%s",hr);
}
FreeLibrary(hDLL);
}
}
.NETインストールパスを取得するのが好きでしたが、リンカエラーが発生しています。GetCORSystemDirectory()の使用方法は?
エラーLNK2019:未解決の外部シンボル_GetCORSystemDirectoryあなたがのGetProcAddress()への2番目のパラメータとして「GetCORSystemDirectory」を渡す必要が
if文が間違っています。 if(ptr!= 0){//使用} – sharptooth
@sharptooth:ありがとう!それを訂正した。 – Indy9000
GetCORSystemDirectoryに関するドキュメントを読み、その内容を理解してください。ここにリンクがあります http://msdn.microsoft.com/en-us/library/k0588yw5(VS.71).aspx – Indy9000