0

私はサービスの作成に携わっており、「サービス停止リクエスト」に関するメッセージ ボックスを表示したいと考えています。

「WTSSendmessage」API を使用してみましたが、メッセージ ボックスが表示されませんでした。私のもう 1 つの疑問は、WTSSendmessage の「Presponse」パラメーターの入力は何であるべきかということです。

例はありますか??

4

1 に答える 1

1

Presponseは、ユーザーの応答を受け取る変数へのポインターです。ユーザーが押すボタンを意味します。

    typedef BOOL (*TypeSendMessage) ( HANDLE,DWORD,LPWSTR,DWORD, LPWSTR, DWORD, DWORD,DWORD, DWORD*, BOOL);

   TypeSendMessage SendMessage;
   HMODULE hModule = LoadLibrary(L"Wtsapi32.dll");

 if(hModule)
 {
   ////////////////// WTSSendMessage ////////////////
   SendMessage = (TypeSendMessage) GetProcAddres(hModule,
                 "WTSSendMessageW");
   if(!SendMessage) 
          return FALSE;

   DWORD res;
   SendMessage( WTS_CURRENT_SERVER_HANDLE,
               WTSGetActiveConsoleSessionId(), (LPWSTR)L"Title", 5*2,
               (LPWSTR)L"Sample Message",14*2, MB_ICONERROR| MB_TOPMOST|MB_SETFOREGROUND,
               FALSE,    &res,  0);
 }
于 2012-06-14T13:23:29.877 に答える