Nonversionedファイルをパッチでアップデートする時は
覚え書きメモ。
- パッチでNoversionedファイルがアップデートされるかは、ユーザーが変更したかしないかがすべて
- NoversionedファイルのアップデートロジックがVersionedファイルと同じように振る舞って欲しい時はCompanionを使う
- Companionファイルになっている場合、アップデートロジックはCompanionの親ファイルによって決まる
- Companionの親ファイルがアップデートされ、Companionファイルが変更されているなら、Companionファイルはユーザーが変更していようとしまいとアップデートされる
- CompanionファイルはKeyPathにはできない
状況が許すならmsiで配布して入れ替えしてしまった方が考えることが少なくて楽。
C++テンプレート完全ガイドに続いてC++テンプレートメタプログラミングが発売されるとな
C++テンプレートメタプログラミング (Programmer’s SELECTION)
- 作者: アレクセイ・グルトヴォイ,デビッド・エブラハムズ,玉井浩
- 出版社/メーカー: 翔泳社
- 発売日: 2010/03/12
- メディア: 大型本
- 購入: 3人 クリック: 309回
- この商品を含むブログ (13件) を見る
翔泳社GJ!
これでメタメタな世界がわかるようになるに違いない。
C++ Templatesが和訳されとった
これはもう買うしかない。
C++ テンプレート完全ガイド (Programmer’s SELECTION)
- 作者: David Vandevoorde,Nicolai M. Josuttis,津田義史
- 出版社/メーカー: 翔泳社
- 発売日: 2010/02/11
- メディア: 大型本
- 購入: 11人 クリック: 273回
- この商品を含むブログ (17件) を見る
Windows InstallerのComboBoxの内容を実行時に設定する方法
Windows InstallerのカスタムダイアログでComboBoxを使う場合、ComboBoxに列挙する要素は以下のテーブルに書きます。
http://msdn.microsoft.com/en-us/library/aa367872.aspx
テーブルにという時点で想像がつく通り、どこかのプロパティに値をセットすればすむなんて簡単な話ではありません。*1ComboBoxに表示するリストを実行時に動的に作成する場合、実行中にMSIのテーブルを書き換えましょう。
以下サンプルコード。 hInstはカスタムアクションの引数のMSIHANDLEです。
PMSIHANDLE hDatabase = MsiGetActiveDatabase(hInst); PMSIHANDLE hView; MsiDatabaseOpenView(hDatabase, "SELECT * FROM ComboBox", &hView); PMSIHANDLE hRec = MsiCreateRecord(4); MsiRecordSetString(hRec, 1, "PROPERTY"); MsiRecordSetInteger(hRec, 2, 1); MsiRecordSetString(hRec, 3, "VALUE"); MsiRecordSetString(hRec, 4, "TEXT"); MsiViewModify(hView, MSIMODIFY_INSERT_TEMPORARY, hRec);
MsiCreateRecord以降MsiViewModifyまでは必要に応じて繰り返してください。
MSIのデータベースの変更についてはあんまり詳しくないので何か間違ってるかもしれません。
たぶんListBoxの場合もほぼ同じだと思います。試してませんが。
なお、ComboBoxのデフォルト値はProperty Tableでプロパティに値をセットしておくことで設定できます。プロパティにセットした値がComboBox TableのValueに存在しない場合、表示されません。
ついでに。
Windows 2000ではComboBoxのheightをちゃんと指定しておかないと、表示領域の高さ不足でドロップダウンリストが表示されなかったりします。XP、Vista、7ではHeightの指定を無視して表示領域いっぱいまで表示してくれるようです。*2
旦那サマは一日にしてならず
挙式から5日*1、入籍から3日たったけど、相も変わらず旦那さん気分になってないだいちょーです。
嫁に、「旦那さんになった実感ある?」って聞かれたので旦那さん気分とはなんぞやみたいなことを考えてみたけどさっぱりわかりませんでした。
嫁のように名字でも変われば多少意識するのだろうけど、名字もかわらず、一緒に暮らすわけでもなく結婚前と同じようにしばらく遠距離通い婚が続くので、はて、今までの生活と何か変わったのかといわれれば、今度の法事に嫁が一緒に出るくらい、となってしまいます。*2
旦那さんになった実感っていうのはつまり、嫁との関係の変化ではなく対外的な立ち位置の変化を感じたかってことだろうと思われるので、たとえ結婚を機に一緒に暮らすことになっていたとしても相手の親と同居するだとか名字が変わるだとかでもない限り、旦那さん気分なんか感じないんだろうなぁと思いました。