VS.NET のセットアップ プロジェクトでショートカット作成をユーザーに選択させるには

スタートアップに登録するかどうかなどをインストール時に選択できるようにしたい。ユーザーインターフェイスエディタでチェックボックス ダイアログを追加すれば簡単にできそうだった。しかし、ショートカットには condition プロパティがないので条件を付加できない。そこでビルドした MSI ファイルをエディトして条件を追加する。 Windows SDK(以前の Platform SDK)をインストールすると、C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin に Orca.msi というセットアップファイルがある。これを使って Orca というアプリケーションをインストールします。イルカのアイコンのこのアプリを起動して、VS.NET で生成した msi ファイルを読み込みます。*1 左側の Tables ペインから Shortcut を選択し、条件を付けたい項目の Component_ を確認(コピー)しておく。 Tables ペインから Component を選択し、Component 列から確認した項目を探す。 該当項目の Condition にチェックボックス ダイアログで設定した [CheckBoxProperty1の値]=1 と書き込む。 標準のままであれば CHECKBOXA1=1 となる。 上書き保存する。 これで完了。(VS.NET 側でプロパティを公開してくれれはいいだけなんですけどね…) 上記の方法は間違ってました。また毎回ビルド後に直さないといけないので、カスタム動作にしてしまった方が楽かもしれません。 と思いましたが Vista だと色々ありそうです。InstallerClass を作ってしまうのが一番いいかもしれません。ただこれだとまた DLL ファイルが増えます。 参考) *1:[http://support.microsoft.com/kb/255905/ja:title]

2007年9月8日 · Toshimitsu Takahashi

Solaris Zone を正しく停止するには

下記の方法で Zone を停止できるが停止処理スクリプトは実行されない。 # zoneadm -z zone01 halt 停止処理をきちんと行うには、zlogin を使って init 0 にする。 # zoneadm list -cv ID NAME STATUS PATH 0 global running / 2 zone01 running /export/zone/zone01 # zlogin zone01 shutdown -i0 -y Shutdown started. Wed Sep 5 12:41:25 JST 2007 showmount: zone01: RPC: Program not registered showmount: zone01: RPC: Program not registered showmount: zone01: RPC: Program not registered Changing to init state 0 - please wait コンソールを確認してみる。(コンソールから抜けるには チルダ ~, [CTRL] + D と入力) ...

2007年9月4日 · Toshimitsu Takahashi

rsync + ssh で Mac のデータを Linux サーバにバックアップする

Mac OS X の blue というホストから Cent Os の red というホストに Subversion のデータをバックアップしてみる。blue の ユーザは、backup として作成した。red には バックアップ元のホスト名をユーザにした blue を作成した。 Mac OS X (blue) でユーザ backup を作成し、SSH のキーを生成する。 # niutil -create / /users/backup # niutil -createprop / /users/backup shell /bin/bash # niutil -createprop / /users/backup realname “Backup User” # niutil -createprop / /users/backup uid 301 # niutil -createprop / /users/backup gid 20 # niutil -createprop / /users/backup home /Users/backup # niutil -appendprop / /groups/wheel users backup # mkdir /Users/backup # chown backup /Users/backup # su - backup $ ssh-keygen -t rsa -N "" ...

2007年9月2日 · Toshimitsu Takahashi

コマンドラインでユーザの追加

Mac では設定情報を NetInfo で管理している。adduser ではなく niutil コマンドで追加・削除する。 # niutil -create / /users/backup # niutil -createprop / /users/backup shell /bin/bash # niutil -createprop / /users/backup realname “Backup User” # niutil -createprop / /users/backup uid 301 # niutil -createprop / /users/backup gid 20 # niutil -createprop / /users/backup home /Users/backup # niutil -appendprop / /groups/wheel users backup

2007年9月1日 · Toshimitsu Takahashi

/etc/inet/ipnodes

/etc/inet/ipnodes と /etc/hosts(/etc/inet/hosts へのシンボリックリンク)の同期がとれないせいで最近よくはまっておりました。ipnodes が sys-unconfig で 反映されなかったり、自ホストの非ローカルアドレスのエントリがなかったりと…。 Solaris 10 8/07 では Single Hosts File として /etc/inet/ipnodes は、/etc/inet/hosts へのシンボリックリンクと置き換わるそうです。 http://docs.sun.com/app/docs/doc/817-0547/gdrmx?l=ja&a=view 8/07 なのにまだ出てないですが(8月もうすぐ終わる…、米国的にはまだもうちょっとあるけど)。

2007年8月31日 · Toshimitsu Takahashi

ホスト名の規則

ホスト名の最後にハイフンがある。Windows では問題ないのだが、DNS からすると問題がある。 混在したネットワークではWindows で設定できたからといってOKとはなりません。 RFC1035 - 2.3.1. Preferred name syntax より ::= [ [ ] ] ::= | ::= | “-” ::= | ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case ::= any one of the ten digits 0 through 9 Note that while upper and lower case letters are allowed in domain names, no significance is attached to the case. That is, two names with the same spelling but different case are to be treated as if identical. The labels must follow the rules for ARPANET host names. They must start with a letter, end with a letter or digit, and have as interior characters only letters, digits, and hyphen. There are also some restrictions on the length. Labels must be 63 characters or less. ...

2007年8月30日 · Toshimitsu Takahashi

Solaris アカウンティング ファイルの整理

/var/adm の wtmpx,utmpx,wtmp,utmp アカウティング・ファイルを整理する。 削除できないため、null コピーでファイルサイズを 0 にする。 # cp /dev/null /var/adm/wtmpx 古いものを取っておきたければ… # cp /var/adm/wtmpx /tmp # gzip /tmp/wtmpx # cp /dev/null /var/adm/wtmpx # mv /tmp/wtmpx.gz /var/adm

2007年8月28日 · Toshimitsu Takahashi

CentOS 5 での Sendmail の設定方法

/etc/mail 設定ファイル(.cf)、テンプレートファイル(.mc)置き場とそのコンパイル場所 下記は設定例、m4 でテンプレート(.mc)をコンパイルして設定を標準出力されるので(.cf)として書き出す。 # cd /etc/mail # cp -p sendmail.cf sendmail.cf.bak # cp -p sendmail.mc sendmail.mc.bak # vi sendmail.mc ← ここで設定を編集する # m4 sendmail.mc > sendmail.cf # /etc/init.d/sendmail restart

2007年8月26日 · Toshimitsu Takahashi

ノートPCの VMWare Player に Cent OS 5 を入れてみる

1. qemu を使って、10GB の vmdk を作成する。 > qemu-img create -f vmdk centos5.vmdk 10G 2. 設定ファイル VMX を作成する。 centos5.vmx (メモリ 256MB、フロッピードライブはなし、DVD ISO イメージを指定。) config.version = “8” memsize = “256” displayName = “CentOS5” guestOS = “redhat” ide0:0.present = “TRUE” ide0:0.fileName = “centos5.vmdk” ide0:0.redo = "" ide1:0.autodetect = “TRUE” ide1:0.present = “TRUE” ide1:0.fileName = “D:\CentOS-5.0-i386-bin-DVD.iso” ide1:0.deviceType = “cdrom-image” floppy0.present = “FALSE” ethernet0.present = “TRUE” ethernet0.connectionType = “bridged” ethernet0.addressType = “generated” 3. VMWare Player から centos5.vmx を開く。 インストールする。 ...

2007年8月11日 · Toshimitsu Takahashi

Python のクラスについて

インスタンス生成時に new は不要。 メソッドの第一引数には self を指定する(this の役割)。 文字列をクラス内にベタに定義すると、オブジェクトの説明を示す __doc__ 属性(docstring)になる。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #!/usr/bin/python # class Hoge: "Hoge is Test class." age = 19 def name(self): return "Hoge!" print "hello world" hoge = Hoge() print hoge.name() print hoge.age print hoge.\_\_doc\_\_ hello world Hoge! 19 Hoge is Test class. 参考 http://www.python.jp/doc/2.4/tut/node11.html http://www.shido.info/py/python7.html 追記 インデントは 4 スペースが慣例。 del で変数などを削除できる。 Python が見えてきた・・・、やっぱり色んな言語を知ることは世界観が広がっていいです。

2007年8月7日 · Toshimitsu Takahashi