私はwinapiで新しく問題があります。ここに私のコードです:Winapi:PrintUIEntryがエラーコード2を返します
typedef BOOL (WINAPI *pPrintUIEntry)(HWND, HMODULE, wchar_t *, DWORD);
printuiDll = LoadLibrary("printui.dll");
if (printuiDll == NULL)
{
printf("Error LoadLibrary %d.\n", GetLastError());
return -1;
}
PrintUIEntry = (pPrintUIEntry) GetProcAddress(printuiDll, "PrintUIEntryW");
if (PrintUIEntry == NULL)
{
printf("Error GetProcAddress %d.\n", GetLastError());
return -1;
}
//cmd is /ia /m "Printer" /f "C:\Program Files x86)\\drivers\Printer\Printer.inf
if (PrintUIEntry(GetDesktopWindow(), printuiDll, cmd, SW_SHOW))
{
printf("Error PrintUIEntry %d.\n", GetLastError());
return -1;
}
私の大学の仕事をコードをコピーすることはできません。私が持っている問題は、PrintUIEntry
が0を返し、それは私にエラーのコード2
を与えるということです。私はこの機能について少し試してみましたが、私は多くを見つけることができました。あなたが手伝ってくれることを願います。ありがとう。
PS
私はチェックしてファイルが存在します。
コマンドプロンプトから、 'rundll32.exe printui.dll PrintUIEntry'と入力して、期待される追加情報を確認します。それらの詳細のどれもなく直接呼び出すことができますか?あなたが渡すパラメータのドキュメントはどこにありますか?それで、なぜ地球上で、あなたはそれがすでにそれらのパラメータの1つとしてロードされているDLLのHMODULEを探していると思いますか? –
私たちはあなたに何を伝えたいと思いますか?エラーはファイルが見つかりません。しかし、あなたがそれを見たので、あなたはそれを知っていました。それは関係がありますか?多分。 cmdの価値は何ですか?あなただけが知っている。 –
プロセスが遠隔起動されています。私はcmdの値をチェックできません。残念です。詳細を追加します。 – Rasty