*さんぷる [#u577181f]

SSTPより楽だと思うんだけどなぁ。

**実装 [#d10c5de7]

 HWND hWnd = (FMOから取得しないと駄目);
 LPSTR name = "さくら";
 UINT WM_SAKURAAPI = RegisterWindowMessage("Sakura");
 // プロセスID取得
 DWORD dwProcessId = SendMessage(hWnd,WM_SAKURAAPI,SA_GETPROCESSID,0);
 HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS,TRUE,dwProcessId);
 // メモリスロット取得
 LPSTR lpReference0 = SendMessage(hWnd,WM_SAKURAAPI,SA_GETSHAREDMEMORY,0);
 // 書き込み
 DWORD dwWritten;
 WriteProcessMemory(hProcess,lpReference0,name,lstrlen(name),&dwWritten);
 // 切り替え開始
 LRESULT result = SendMessage(hWnd,WM_SAKURAAPI,SA_EXECUTEGHOSTCHANGE,GC_GHOST);

SSTPと同じようにFMOから対象のハンドルを取得しないと駄目。~
しかしリクエストを組み立てる手間がないため、実装的には楽。


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS