Je suis confrontée à un problème avec Wow64DisableWow64FsRedirection()
.La fonction Wow64DisableWow64FsRedirection() ne fonctionne pas lorsqu'elle est compilée pour 64 bits dans Visual Studio dans Windows 10
Lorsque je compile une plate-forme 64 bits dans Visual Studio 2010, il ne fonctionne pas dans la fenêtre 10, il revient avec l'erreur 1.
Mais, quand je compile une plate-forme 32 bits à la place, la fonction est disponible dans la fenêtre 10.
typedef BOOL(__stdcall *tFSRED)(HMODULE);
HMODULE hKernel = LoadLibrary(_T("Kernel32.dll")); // Get Kernel module handle
if (hKernel == NULL)
{
return 2;
}
tFSRED pFunc;
pFunc = (tFSRED) GetProcAddress(hKernel, "Wow64DisableWow64FsRedirection");
ret = pFunc(&oldValue); // Turn the file the file system redirector off
if (ret == FALSE)
{
_tprintf(_T("\nFile System Redirection could not be turned off. Reason: %d"), GetLastError());
return 4;
}
// ret is always TRUE when compile through 32-bit platform
// but ret return FALSE when compile through 64-bit platform
dans Visual studio, si je compile pour la plate-forme 64 bits, puis après la compilation si j'ouvre le fichier EXE généré en depends.exe
, il montre 64 devant l'EXE. Après la sélection d'une plate-forme 32 bits, le fichier EXE généré est de 32 bits. Ce EXE fonctionne dans mon cas, mais je veux que mon EXE soit 64 bits, donc je sélectionne la plate-forme 64 bits et j'obtiens un EXE 64 bits, mais cela ne fonctionne pas comme je l'ai expliqué ci-dessus.
Incluez le code dans le corps de la question afin de pouvoir le formater correctement en tant que code. – zett42