わいえむねっと

Contents
Categories
Calendar
2026/11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Monthly Archives
~2000/01
Recent Entries
RSS1.0
Templates
Information
Processed: 0.055 sec
Chashed: -
2008/05/15 Thu
昼飯抜き。 多言語メッセージリソースメモ:
Sample Message Text File (Windows)
http://msdn.micro​soft.com/en-us/library/aa385769(VS.85).aspx
Be aware that you must use a Unicode-compatible editor to simultaneously support the characters used in different written languages.
としか書いていないけど、例によってUTF16LEで保存しろということらしい。
BOMはあってもなくても可。出力結果にも差異はなし。

Message Compiler (MC_exe) (Windows)
http://msdn.micro​soft.com/en-us/library/aa385638(VS.85).aspx
-a
Specifies the input file is ANSI (default).

-u
Specifies that the input file is Unicode.
ANSI文字がデフォルトなので -u 必須。

自前で使用するなら、

FormatMessage Function (Windows)
http://msdn.micro​soft.com/en-us/library/ms679351(VS.85).aspx
dwLanguageId
The language identifier for the requested message. This parameter is ignored if dwFlags includes FORMAT_MESSAGE_FROM_STRING.

に MAKELANGID(LANG_JAPANESE, SUBLANG_DEFAULT) とか MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US) を。
あと、ActivePerlでUTF16を扱うには一手間必要。

スクリプティング言語資料室(仮)
http://www.kt.rim​.or.jp/~kbk/
ActivePerlで UTF-16(BE|LE)のデータを出力するときの注意事項
ActivePerlではファイルをオープンしようとすると、特に指定しなければ テキストモードでオープンします。 このため出力の文字コードにUTF-16のデータを出力しようとしたとき、 テキストモード時に行われる LF → CR LF 変換が変なタイミングで 行われてしまうため、出力結果がおかしくなります。 対応策は 183 : Writing a Unicode file via perl ... にあるとおり、ファイルのオープン時の指定を工夫するというものです。


if ( $ESENT ){ #ifdef ESENT 
           open( INIFILE, "<:raw:encoding(UTF16-LE):crlf:utf8", "$INIFILE" ) || die "Cannot open $INIFILE: ";
           print INIFILE "\x{FEFF}";  # print BOM (Byte Order Mark) for the unicode file
} else { #else
           open( INIFILE, "<$INIFILE" ) || die "Cannot open $INIFILE: ";
} #endif

後輩が引っ越し先を探しているとかで、一之江の不動産屋に案内することに。
駅からすぐの不動産屋というか、取締役宅の近所の不動産屋というか、うちの近所の不動産屋というか、とにかく近所。
1件目に案内された物件が割と良い物件だったので後輩即決。
とりあえす祝い酒。
2008/05/14 Wed
Desktop Heap MonitorをWindows Server 2008で使おうと思ったら

Microsoft Support Professionals Toolkit for Windows
http://www.micros​oft.com/japan/windowsser​ver2003/downloads/supporttoo​ls.mspx
サポートする OS と CPU アーキテクチャ :
Windows 2000
Windows XP (x86 版、x64 版)
Windows Server 2003 (x86 版、Itanium 版、x64 版)

そもそも対応していなかったと思ったら

Windows Serverによる基幹システムに向けた富士通の取り組み 富士通
http://primeserve​r.fujitsu.​com/primequest​/products/os/mc-windows.ht​ml
マイクロソフト社ほか数社による共同開発ツールを提供しています。高いWindows技術力を持ち、厳しいお客様要件を熟知した富士通が仕様検討から開発、検証まで一貫してツール開発の具体化に貢献しています。

これらのツール開発は、Windows Server 2008に向けても鋭意準備を進めています。

準備中。 新しい店を見つけたからと取締役に連行されて、定時退社飲酒。
もつ鍋の店らしい。
と思いきや、もつ鍋の店ではありませんでした。
というか、今の時期はもつ鍋やってませんでした。
まぁ、それはそれとして飲酒。
ワイン党の取締役に強引に焼酎を付き合っていただきなんだかんだで一本空けて。

結局やっぱりワインを飲みたいらしい取締役から、水曜ですよ!と逃走したり。
2008/05/13 Tue
変な音どころか、靴底がもげた。かかと部分が。めりめりーと。
とりあえずアロンアルファ。ゼリー状。 続・デスクトップヒープメモ:
http://support.mi​crosoft.co​m/kb/826518/ja
To troubleshoot this problem, use the Gdiobj.exe tool to monitor the Brush column for PID 0. PID 0 represents GDI objects that are not private. If the Brush column continuously increases but does not decrease, you may be experiencing the leak that is described in this article. In this case, you can see the leak when you start and stop Microsoft Word; the Brush column increases by 2, but when you exit the program, it does not decrease.

To download the Gdiobj.exe tool, visit the following Feng Yuan Web site:
http://www.fengyuan.com/download.html (http://www.fengyuan.com/download.html)

で確認してみたところ、main() しかなくても DC 2つと Bitmap 1つと Brush 1つを消費するという結果に。何に使っているのさ。

あと、非対話型のデスクトップヒープは512KBもしくは768KBと小さいので、対話型に逃がしてみるテスト。

CreateProcess 関数
http://msdn.micro​soft.com/ja-jp/library/cc429066.a​spx
lpStartupInfo
新しいプロセスのメインウィンドウの表示方法を保持している、1 個の 構造体へのポインタを指定します。

の

STARTUPINFO Structure (Windows)
http://msdn.micro​soft.com/en-us/library/ms686331.a​spx
lpDesktop
The name of the desktop, or the name of both the desktop and window station for this process. A backslash in the string indicates that the string includes both the desktop and window station names. For more information, see Thread Connection to a Desktop.

を WinSta0\Default とかに。
2008/05/12 Mon
Visual Studio 2005と2008が届いたので試す。
まずはそれぞれのバージョンでのカスタム動作の挙動を確認するために、特にプロパティを変更せずにmsiファイルをビルド。
2005では、2003で作成したmsiファイルと同様にERROR_ACCESS_DENIED。
2008では、成功。うん?成功??

Windows Vista の Windows インストーラ配置
http://msdn.micro​soft.com/ja-jp/library/bb384154.a​spx
インストールのアクセス許可を昇格させるには、プロジェクト (.vdproj) ファイルを開きます。プロジェクト ファイルの MsiBootstrapper セクションで、RequiresElevation プロパティを True に設定します。このプロパティは、Visual Studio 統合開発環境 (IDE) を介して使用することはできません。したがって、プロジェクト ファイルを使用する必要があります。詳細については、「RequiresElevation プロパティ」を参照してください。

あたりが必要になるかと思っていたのだけれど、そういうこともなく?
デフォルト値を確認しても

        "MsiBootstrapper"
        {
        "LangId" = "3:1041"
        "RequiresElevation" = "11:FALSE"
        }

だし、

Windows Vista の Windows インストーラ配置
http://msdn.micro​soft.com/ja-jp/library/bb384154.a​spx
Visual Studio のバージョン間の違い
Windows Vista UAC 下の Visual Studio 2005 セットアップ プロジェクトと Visual Studio 2008 セットアップ プロジェクトの動作にも違いがあります。

にもカスタム動作に関する記述はないし。
なんなのさ、UAC。 デスクトップヒープメモ:
User32_dll または Kernel32_dll の初期化に失敗する
http://support.mi​crosoft.co​m/default.as​px?scid=kb;ja;184802
原因 2
システムでデスクトップ ヒープが不足している。

Microsoft Support Professionals Toolkit for Windows
http://www.micros​oft.com/japan/windowsser​ver2003/downloads/supporttoo​ls.mspx
Desktop Heap Monitor
Desktop Heap Monitor は、デスクトップヒープとよばれる Windows の特別なメモリ領域のサイズや、現在の使用量などの情報をレポートするツールです。従来はデスクトップヒープが異常に消費されている場合でも、その状況をリアルタイムで把握することは困難でしたが、このツールを利用することによりシステム管理者は Windows のデスクトップヒープの状況を本番稼動環境で容易に把握することができます。また、大規模アプリケーションが大量のデスクトップヒープを消費することがありますが、使用量を予め見積もることは困難でした。このツールは Windows のデスクトップヒープの使用量を事前に測定し、システムのチューニングを行うことも支援します。

Support Tools Project について
Microsoft Support Professionals Toolkit for Windows を開発した共同開発プロジェクトは、ミッションクリティカルな環境で使用されるシステムに対して非常に高いレベルのサポートを期待される日本の顧客のニーズに応えるため、マイクロソフト調布技術センターを開発拠点として 1998 年に発足以来、毎年新しいテーマに取り組みながらパートナーとの共同開発を継続してきました。
何気にメイドインジャパン。さらに調布。

Desktop Heap Monitor ツールのインストール時にエラー メッセージ "dheapinst - Win32k.sys symbol load error, correct symbol required" が表示される
http://support.mi​crosoft.co​m/kb/914216/ja

Windows シンボル パッケージのダウンロード
http://www.micros​oft.com/japan/whdc/DevTools/Debugging/symbolpkg.​mspx

Microsoft Advanced Windows Debugging and Troubleshooting Desktop Heap Overview
http://blogs.msdn​.com/ntdebuggin​g/archive/2007/01/04/desktop-heap-overview.a​spx
Desktop heap is probably not something that you spend a lot of time thinking about, which is a good thing. However, from time to time you may run into an issue that is caused by desktop heap exhaustion, and then it helps to know about this resource. Let me state up front that things have changed significantly in Vista around kernel address space, and much of what I’m talking about today does not apply to Vista.

Microsoft Advanced Windows Debugging and Troubleshooting Desktop Heap, part 2
http://blogs.msdn​.com/ntdebuggin​g/archive/2007/07/05/desktop-heap-part-2.aspx
Matthew here again ? I want to provide some follow-up information on desktop heap. In the first post I didn’t discuss the size of desktop heap related memory ranges on 64-bit Windows, 3GB, or Vista. So without further ado, here are the relevant sizes on various platforms...
2008/05/11 Sun
というわけでー。

MOドライブ落札。SCSI。外付。PCカード付き。
そしてジャンクMOドライブ購入。SCSI。内蔵。3台。FUJITSU 2台とOLYMPUS 1台。
ついでにジャンクSCSIカード購入。3枚。adaptec 2枚とIO DATA 1枚。
やりすぎ感が否めない。 640MB以上のディスクは2048byte/sectorになるので専用フォーマッタが必要だとか、起動ドライブにするにはHDDとSCSI IDを離すとか、HDDがないなら0にするとか、SCSI BIOSでハードディスクモードとか懐かしすぎて泣いた。
2008/05/10 Sat
アセトアルデヒドを生成するのに費やすいつもの土曜日。 http://plusd.itme​dia.co.jp/lifestyle/articles/0805/09/news040.ht​ml
800×480ドットという響きに妙に馴染みがあると思ったら、sigmarionIIIの解像度でした。
と言ったら、一緒にするなと怒られた。ひどく。
なんで!
2008/05/09 Fri
眠いからと早く寝たのに結局3時に起きて本末転倒。 中国語版Vistaにインストールできないアルヨーと言われたので調べてみたところ、言語以前にUACの問題でした。

Windows Vista におけるユーザー アカウント制御の理解と構成
http://technet.mi​crosoft.co​m/ja-jp/windowsvis​ta/aa905117.a​spx?wt.svl=lef​tnav

インストール自体はできているけど、どうもカスタム動作に失敗している様子。

Windows Vista の Windows インストーラ配置
http://msdn.micro​soft.com/ja-jp/library/bb384154.a​spx
カスタム動作のアクセス許可の昇格
カスタム動作エディタで作成されたカスタム動作は、昇格したアクセス許可で実行されます。カスタム動作は、レジストリやファイル システムなどのユーザー固有データにアクセスしないようにしてください。カスタム動作は呼び出しユーザーのアカウントで実行されるわけではないからです。

昇格されてないじゃないのよさ!

Windows Vista の Windows インストーラ配置
http://msdn.micro​soft.com/ja-jp/library/bb384154.a​spx
Visual Studio のバージョン間の違い
Windows Vista UAC 下の Visual Studio 2005 セットアップ プロジェクトと Visual Studio 2008 セットアップ プロジェクトの動作にも違いがあります。

いや、2003です。だからか。

よく寄せられる質問 Visual Studio と Windows Vista
http://www.micros​oft.com/japan/msdn/vstudio/support/windowsvis​ta/faq/
Q. サポートされない製品は何でしょうか。

A. 上記 3 製品を除く、Visual Studio .NET 2003、およびそれ以前の Visual Studio はサポートされません。

Q. Visual Studio .NET 2003 を Windows Vista でサポートしないことで、ユーザーに Visual Studio 2005 へのアップグレードを強制しているのではないでしょうか。

A. Windows Vista で利用可能となる新機能は、Visual Studio 2005 で開発することを第一に想定しています。Windows Vista では、重要な機能強化が多くあり、これら強化された機能を利用するアプリケーションを構築するためには、Visual Studio 2005 が最も優れた開発ツールです。これには、次の例があります。

カスタム動作で実行しているexeを直接叩いてみたところ、ERROR_ACCESS_DENIED。ああ。
とりあえずmanifestファイルを置いてみたたころ昇格ダイアログがでるようになったので、その構成にてセットアッププロジェクトをリビルドしたところ、今度はインストールすら通らなく。
カスタム動作の段階まで進んだところでプログレスバーが逆行します。
なんだよそれ!

アプリケーション開発者向け MicrosoftR Windows Vista 対応アプリケーションの互換性
http://download.m​icrosoft.c​om/download/3/4/4/3448ddf3-ca22-45bd-9984-1237e8ed00​19/Windows_Vi​sta_applic​ation_comp​atibility_​paper.doc
埋め込みマニフェストを作成する

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly  xmlns="urn:schemas-microsoft-com:asm.v1"
 manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="requireAdministrator" />
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

関連メモ:


Windows インストーラ配置のトラブルシューティング
http://msdn.micro​soft.com/ja-jp/library/kz0ke5xt(VS.80).aspx

アプリケーション開発者向け MicrosoftR Windows Vista 対応アプリケーションの互換性
http://download.m​icrosoft.c​om/download/3/4/4/3448ddf3-ca22-45bd-9984-1237e8ed00​19/Windows_Vi​sta_applic​ation_comp​atibility_​paper.doc
Windows Vista では、アプリケーションをインストールするには管理者権限が必要です。そのため、インストールプログラムを実行するときには、昇格が必要となります。そこでWindows Vista では、経験則に基づき特定のパターンに合致するプログラムを、インストーラとして検出する機能が追加されています。インストーラとして検出されると、自動的に権限昇格ダイアログが表示され、管理者権限で実行することができます。たとえば、ファイル名に「setup」、「update」、「install」という文字列が含まれている場合、Windows Vistaはアプリケーションの実行時にインストーラとみなし、実行には昇格が必要であると認識します。そこで自動的に権限昇格用のダイアログボックスが表示されます。ここで昇格すれば、問題なくアプリケーションをインストールすることができます。
とりあえず2005を、ついでに2008を用立ててもらうことに話が進んだところでシキさんから電話が。

シ「暇ですか!」
な「いや、暇ではないけど」

新宿で飲むことに。

唐突になんだと思ったら、先日行った居酒屋でもらった割引券を使用するためにとのこと。系列店ならどこでも使用可能な割引券らしい。ああ。
だからってなんで地上49階?無駄夜景。
シキさんが英会話教室で披露したアメリカンジョークの話を聞いたりしつつ、一杯飲み終わったところで追い出され(違います)、地下の坐和民に移動。

やきいも黒瀬を頼もうとしたらシキさんから「高い!」て言われたり。
結局、やきいも黒瀬は無かったり。
なやさんは盈進で十分ですて言われたり。
盈進をボトルで頼んだり。
az君がベーコン&チーズピッツァを頼もうとするのをシキさんが全力で阻止していたり。
シキさんがホットペッパーを取りにいっている間にaz君と二人でホットペッパー分のチーズを頼んだり。
戻ってきたシキさんに罵られたり。
そもそもホットペッパーに坐和民が載っていなかったり。
盈進を飲みすぎたり。
http://ebook.webc​atalog.jp/engine/isapi/frame.dll?bc=14464&c​o=watami&u​l=ja
2008/05/08 Thu
10km歩いたくらいで革靴が壊れやがりました。小坂那也です。(挨拶)
歩くたびに靴底から変な音がする。 猛烈に眠い日。
そういえば、通勤時間が短くなってから電車でうとうとすることが少なくなっていたなと思ったりうとうとしたり気が付いたら駅に着いていたり。
今日は早く寝よう。
2008/05/07 Wed
デミタス。
デミタス。
デミタス。

3本目のデミタスを購入していたところに、唐突に声をかけられて。

坊主頭「コーヒーおごってください」
魚「なにを言っているんだね、君は?」

小銭がないからって!
おごったけど! 帰ろうとしたら新宿線が人身事故で止まっていた。
発生したばかりで復旧は未定とのこと。
うあー。
じゃあ、歩こう。

新宿線の概ね上を通っている新大橋通りを歩くつもりが、馬喰横山を出発した時点で90度方向を間違えていたせいでいきなり京葉道路に。
まぁ、京葉道路なら問題ないかーとそのままてくてく。
引っ越しの際、有料道路使わないなら甲州街道-靖国通り-京葉道路-環七通りかなーとスーパーマップルを眺めていたりしたので、新大橋通りよりむしろ地図は頭に入っていたこともあり。
あのときは、結局有料道路しか使いませんでしたがというか有料道路を使わない選択をしていたらあれはアウトだった。間違いなく。

順当に歩みを進めて中川横断。
環七通りまで行くのは分かりやすいけど若干遠回りになるからなーと適当に進路を変更。
しばらくすると、なんだか見たことがあるような通りに。具体的に言うと、市役所に届けを出しにいった際にバスの車窓から見たことがあるようなそんなような通りに。
というかそれだ。
一之江到着。 適当に変更した進路は、一之江まっしぐらの最短距離だった模様。
昼飯抜きの胃袋を途中で買ってきた泡盛で満たす。
http://www.mapion​.co.jp/c/f?uc=1&grp=r​oute&el=13​9/51/11.808&nl=​35/41/27.240&scl​=70000&env​=0100&dist​=1jL9860zF​k4751jL953​9zFk7671jL​h775zFr487​1jLh775zFq​6751jLi692​zFq6431jLj​252zFs9801​jLz921zFq9​681jM9298z​Fs8501jMJ3​52zFu9611j​N6416zFv99​91jNk927zF​y2391jNJ03​1zFz5701jO​e530zFB194​1jOM145zFC​6871jP2214​zFG9401jPg​605zFL3541​jPn639zFN0​101jPQ539z​FR8471jQa0​88zFJ9591j​Qb927zFI62​81jQg004zF​G6801jQq87​7zFy4021jQ​B909zFq158​1jQT936zFc​7151jRa084​zF20351jRa​045zF11571​jRd282zEX0​791jRc442z​EW7881jRc6​82zEW204
2008/05/06 Tue
ケースが解放されたPC4台と外したケース4個に挟まれて寝起きしたゴールデンウィークもいよいよ最終日。皆さんいかがお過ごしでしたでしょうか。小坂那也です。(挨拶)
僕は今、起動ディスクとかユーティリティディスクとかいったフロッピーが十数枚にハードディスクが2台に光学ドライブが3台にインタフェースカードが4枚にネットワークカードが3枚に各種変換基板等々が床に布団に散乱し枕元にはキーボードが3つ鎮座の惨状を見たり見なかったり見ないふりをしたりしています。
というか装着した分や片付けた分を除いてそれなので、なんだかもう大変だな!と思いました。
他人事みたいに言うな。 最終的な結論として、SCSI接続MOが複数台必要という結論に至る。(USB接続とATAPI接続は保有)