http://forum.xda-developers.com/showthread.php?t=1944675で説明されている方法を使用して、Windows RT を使用してサーフェスで win32 デスクトップ アプリを実行しました。
LoadLibraryを使用して、user32.dll、kernel32.dll、gdi32.dllなどのWindows dll をロードできます。しかし、LoadLibraryを使用して「comctl32.dll」または「comdlg32.dll」をロードしようとすると、NULL が返されます。
GetLastError()によって返されるエラー コードは1114です。「ダイナミック リンク ライブラリ (DLL) の初期化ルーチンが失敗しました」という意味です。
編集: x86 用にコンパイルしたアプリをテストすると、問題なく動作します。ARM 用にビルドして Windows RT で実行すると、このエラーが発生しました。
サンプルコード:
HMODULE hModule;
hModule = LoadLibraryA("user32.dll");
printf("Load Library user32.dll : %x with Err: %x\n", hModule, GetLastError());
hModule = LoadLibraryA("kernel32.dll");
printf("Load Library kernel32.dll : %x with Err: %x\n", hModule, GetLastError());
hModule = LoadLibraryA("comctl32.dll");
printf("Load Library comctl32.dll : %x with Err: %x\n", hModule, GetLastError());