社本@元ネオニート Blog

社本@元ネオニート (元々ワック) のいたずら書き (for Programmers)

AILight Banner
AILight Blog

プロフィール

社本@元ネオニート Blog
働いたら負けかなと思っていたのですが。。とうとう働き始めました。アメリカのシアトル・エリアにある企業向けのバックアップソフトを開発している会社です。日本人は私だけ。なんとか。。やっていけてるようです。

目次

Blog 利用状況

記事分類

過去の記事

タグ

カスタムアクションの中で、メッセージボックスを表示 - Windows Installer

Windows Installer のカスタムアクションの中では、親ウィンドウ(インストーラ)のHWNDが
取得できないため、通常のメッセージボックスは表示できません。
(親ウィンドウを、デスクトップにしちゃう手はあるけど。。親子関係がおかしいし)
Windows Installer 的には、MsiProcessMessage API を用いるのが正解です。

とりあえず、通常の MessageBox API と同じような感覚で使える関数を作成してみました。

---
static int MsiMessageBox(MSIHANDLE hInstall, LPCTSTR szText, UINT nType = MB_OK)
{
 ATLASSERT(hInstall != 0);
 PMSIHANDLE hRecord = ::MsiCreateRecord(1);
 ::MsiRecordSetString(hRecord, 1, szText);
 return ::MsiProcessMessage(hInstall, INSTALLMESSAGE(INSTALLMESSAGE_USER | nType), hRecord);
}
---

投稿日時 : 2005年1月26日 1:55


コメントを追加

タイトル
名前
URL
コメント