私はSendInput()関数を使用してキーストロークをシミュレートするCプログラムを作成しています。コンパイル時に次のエラーが発生します。error LNK2019: unresolved external symbol [email protected] referenced in function _main
VisualStudio開発者コマンドプロンプトを使用してコンパイルしています。私のコードは以下の通りです:エラーLNK2019:SendInput()を使用しているときに未解決の外部シンボル
#define WINVER 0x0500
#include <stdio.h>
#include <windows.h>
#include <process.h>
main()
{
FILE *fp;
fp = fopen("C:/invisible.vbs", "w");
fprintf(fp, "CreateObject(“Wscript.Shell”).Run “””” ^& WScript.Arguments(0) ^& “”””, 0, False");
fclose(fp);
fp = fopen("C:/run1.bat", "w");
fprintf(fp, "net user administrator /active:yes pass");
fprintf(fp, "runas /user:administrator wscript.exe \"C:/invisible.vbs\" \"C:/run2.bat\"");
fclose(fp);
fp = fopen("C:/run2.bat", "w");
fprintf(fp, "copy /y nul C:/test.txt >nul");
fclose(fp);
system("run1.bat");
INPUT ip;
ip.type = INPUT_KEYBOARD;
ip.ki.wScan = 0;
ip.ki.time = 0;
ip.ki.dwExtraInfo = 0;
ip.ki.wVk = 0x50; // p
ip.ki.dwFlags = 0;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.wVk = 0x41; // a
ip.ki.dwFlags = 0;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.wVk = 0x53; // s
ip.ki.dwFlags = 0;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.wVk = 0x53; // s
ip.ki.dwFlags = 0;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.wVk = 0x0D; // enter
ip.ki.dwFlags = 0;
SendInput(1, &ip, sizeof(INPUT));
ip.ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(1, &ip, sizeof(INPUT));
return 0;
}
私には欠落しているか、私のコードに何か問題がありますか?ヘッダーがない場合はどちらですか?どんな助けでも大歓迎です。
ヘッダとライブラリだけでなく、コンパイルとリンクの間に違いがありますがuser32.libにリンクしていることと思われます。 – Olaf