32ビット用にコンパイルされたときに64ビットマシンでSetupDiCallClassInstallerを呼び出すとfalseが返されます。64ビットマシンで32ビット用にコンパイルすると、SetupDiCallClassInstallerがERROR_IN_WOW64をスローします。
GetLastError() == ERROR_IN_WOW64
他のすべての関数呼び出しは32ビットで問題なく動作しますが、これだけで問題が生じます。
私がここで間違っていることを誰かが知っているのだろうかと思います。
32ビットプロセスからその関数を呼び出すことはできません。プログラムをコンパイルしてx64をターゲットにする必要があります。 –
@HansPassantそれをx64に制限する合理的な背後にありますか? – nathan
はい。それは、これよりずっと面白い質問です。新しい質問を始めることをためらってください。 –