iPhone/iPad用ドット絵エディタ「EDGE touch」

最近のエントリー

Microsoftは設定データなどをレジストリへ保存する事を推奨しているぽいですが、結構嫌がるユーザーさんが多いので私のソフトではiniファイルへ書き出すことが多いわけなのですが、久々にWritePrivateProfileString APIを調べていたら、やれば出来る子という事が判明しました。

APIの名前から機能を「文字列をiniファイルに書き出す」だけだと勝手に思いこんでいたのですが、引数の渡し方によってはキーを削除したり、セクションを削除したりできるようです。
(こういうのは削除専用のAPIを別途作った方が使い手は判りやすいと思うんですが。)

また、ユニコード版(WritePrivateProfileStringW)は、ユニコードのまま文字列を書き出せるという事も判明。
ただし、iniファイルがユニコードファイルである必要があります。
なので、iniファイルが存在していなかったら、BOM(バイトオーダーマーク)だけのファイルを生成した上でWritePrivateProfileStringWを実行すれば良さそうです(ファイルが無い状態でWritePrivateProfileStringWを呼ぶとShiftJisに変換されてしまうようです)。

こんな感じかな。

CString strIniPath = iniファイルのパス
if (!::PathFileExists(strIniPath)) {
	CFile file;
	if (file.Open(strIniPath, CFile::modeWrite | CFile::modeCreate | CFile::shareExclusive)) {
		BYTE bom[2] = {0xff, 0xfe};
		file.Write(bom, 2);
		file.Close();
	}
}
::WritePrivateProfileString(_T("Test"), _T("Test"), strUnicode, strIniPath);

3時間ぐらい掛けて洗車&ワックスを掛けてきました。
水洗い→鉄粉取り→拭き取り→水アカ取り→水洗い→拭き取り→ワックス掛け→ワックス拭き取り→車内掃除
・・・という感じでちょっと無駄な行程もありますが、くたくたですorz

しかも時間が無かったのでキズ消し行程をすっ飛ばしました。

ここのところ時間が無くて、前にワックス掛けてからだいぶ月日が経っていたのでこれで一安心です。
次もきっと数ヶ月後になると思いますが(^^;

Domino.exeを実行して何も起こらない(ウィンドウすら表示されない)、という症状が不具合報告で何件か報告されていましたが、その原因らしき情報を頂きましたのでこちらでもご報告いたします。

(ryoさんより)

(問題)webカメラを導入した日からdominoが起動できなくなった。(対応)webカメラのドライバをインストールしてから常駐するようになったFixCamera.exeを終了すると、domino.exeが起動できるようになった。カメラは500円で買った無名ブランドの商品です。(サイトも無い)メッセージ主もLogicool Qcamが常駐しているとのことで、webカメラのソフトが起動しているのが原因かと思います。

Ctrl+Shift+ESCキーでタスクマネージャを起動して、プロセスにFixCamera.exeがいるようでしたら、終了させてからDominoを起動させてみてください。

2009
8月
13

6/22にFAX送信、8/13に郵便物が届きました。
大体二ヶ月ってところでしょうかね。

と言っても7月に入ってアップルのシステムが変わったようでEINとか必要無くなったらしいので、今後使う機会は無いかも知れませんが(^^;

Visual Studio 2008 SP1とMFC(feature pack相当)を使ってアプリを書いていたのですが、

↑こんな感じでメニューの文字が小さくなってしまいました(Dominoのメニューフォントサイズが、設定してあるフォントサイズ)。

一応回避方法があったので載せておきます。

CMainFrame::OnCreateの上の方で

LOGFONT lf;
SystemParametersInfo(SPI_GETICONTITLELOGFONT, sizeof(LOGFONT), &lf, 0);
CMFCMenuBar::SetMenuFont(&lf);
m_fontGUI.CreateFontIndirect(&lf);

を実行すれば良さそうです。

これどっかに連絡すればsp2で治してくれるのかな?
MSのサポートって有料なのでこういう不具合を見つけてもいまいち報告する気にならないのですが。

—–
(コード修正しました)
なにやらSPI_GETNONCLIENTMETRICSでフォントを取得する方法は
開発環境によってはXPでうまく動作しないようなので、
SPI_GETICONTITLELOGFONTを使う方式に変更しました。
参考:http://d.hatena.ne.jp/NyaRuRu/20080303/p1

記事検索

コミュニティ

Banner designed by eu様
ドット絵掲示板
ドット絵掲示板
自作の「ドット絵」を投稿することができます。ドッターさん同士の交流の場としてご利用ください。
TakaboSoft Wiki
TakaboSoft Wiki
ソフトウェアに関する質問・不具合報告・要望などを書き込むことができます。