2008-01-01から1年間の記事一覧

The remote procedure call failed

IDataObjectとIDropSourceを作って、エクスプローラ側にIStream経由でファイルをドロップする処理を作っているのだが、特定の環境(というか、家のWindows Vista x64環境)で、というダイアログが出て、アプリケーションが死んでしまう。アプリケーション側は…

ESET NOD32 Antivirus 3.0

NOD32の3.0が出ていることに気づいたので、英語版ですが、導入してみました。 2.7からのアップグレードですが、前もって前バージョンをアンインストールする必要はありませんでした。3.0のインストーラが勝手に古いバージョンを上書き(?)してくれるみたいで…

Lenovoからのプレゼントが届きました。

ThinkPad X300用の6セルバッテリーとUSB HDDが着ました。 大容量バッテリー 標準容量(3セル)との比較。分厚くなっています。ゴム足がついているので、台の上に置くと微妙に傾いたような感じ。標準容量に比べて、ずっしり感はあります。が、それでも普通の大…

ThinkPad X300 英語キーボード

わざわざ高い輸送料を払ってまでしてThinkPad X300用の英語キーボード(FRU:42T3600)を入手しました。 入手元は、ThinkPad-Partsというところ。 Googleで検索をかけて唯一ヒットした会社。日本にも輸出してくれるみたいだったので、この店の評判だけをチェッ…

ThinkPad X300のレビュー

そろそろ一ヶ月以上ThinkPad X300を使い倒したので、使い倒した上でのレポートを書いておくべきだと思う。ちなみに、僕が使っているのは、647816Jというモデルに別に買ったメモリ2GBx2を装備して、4GBにした上で、Windows Vista Business x64版(SP1適用済み)…

仕様書をなぞった実装

「ソースコードがドキュメント足りえないのは訓練していないから」 - イトウ アスカ blog 5月という時期だけにこういう話はたくさんある。新人研修にはうってつけの話かもしれない。仕様書をなぞったようなコードを書くのは、単にそのプログラマがウブだから…

poderosaでユーザー毎の設定を使う

Windows Vista 32-bitだと、poderosaを使うときに、ユーザー毎の設定をちゃんと保存しているような気がするのだけれども(ウィンドウ位置やカスタマイズ項目)、なぜか、64-bit環境だとそうはいかない様子。よく調べると、poderosa自体は、マルチユーザーに対…

emonster

D01HWの契約があと3ヶ月残っているにもかかわらず、emonster (S11HT)を契約してしまいました。まぁ、今の時点で違約金を払ってD01HWを解約しても良いのですが、ライトデータプランだと、放置しても違約金を払ってもほとんどかわらないので、どうしようという…

残り容量

SSDが64GBと少ないので、残り容量は非常に気になるものです。 ThinkVantageのもろもろ Office 2007 Professional Visual Studio 2008 MSDN Library for Visual Studio 2008 ATOK2008 NOD32 その他 DRIVERSディレクトリは削除していない をインストールした直…

エクスペリエンス インデックス

さて、SSDが爆速なのは、普通に使っていれば実感できるんですが、さて、エクスペリエンス インデックスはいかがなものだろうと調べて見ました。ちなみに、メモリは、2GB x2で4GBです。Vistaは当然SP1。そうすると、なんか思ったよりスコアが良すぎるんですけ…

D01HW 64bit ドライバ

僕は、イーモバイルのD01HWのそれも不具合有まくりの初期版を持っていますが、最初の接続で再起動を促され、本当に再起動しないと使えなかったことをのぞけば、普通に動いてしまいました。64bit対応はサイトにも明記されていないんですけどねぇ。ちゃんとDat…

Bluetooth

僕を無駄に不安にさせたのが、Bluetooth。これ、インストール直後にはデバイスマネージャに姿も形もありません。困り果てていたんですが、X300の背面のワイヤレスの物理スイッチを一回、OFFにしてからONにすると認識されました。ひょっとすると、[Fn]+[F5]で…

無線LAN

これはドライバが自動ではインストールされませんでした。仕様によれば「インテル® Wireless WiFi Link 4965AGN」とあったので、インテルのサイトに行って、ドライバをダウンロード、インストールしたところ問題なく認識しました。

Windows Vista Business x64をインストール

とこれだけで終わると普通すぎるというか、単にメモリを4GB刺すのに、3GBしか認識されないのでは我慢ならないという理由で、64bit版のOSをインストールしてみました。Ultimateにしなかったのは、SSDの領域をケチるためです。それ以外にも、LenovoサイトのThi…

ThinkPad X300 到着

2末に注文したにもかかわらず、結局、一ヶ月弱待たされる羽目になったThinkPad X300がやっと届きました。内容物は次のような感じ。X300はSSDが64GBしかないので、リカバリディスクは最初からついてきます。それもVistaからXPへのダウングレード権もあるので…

Subversion+Apache時のアクセスコントロール

Subversion+Apacheの運用で面倒くさいのは、アカウントの管理よりも、ディレクトリ毎のアクセス制御だったりする。あのディレクトリはあの連中には見せられないとか、この人はしばらくread-onlyの方がいいなとか。で、うちの会社では、1年以上前にアカウント…

C++スーパープログラマになるための学習項目リスト

C++

4月は新入社員の季節です。うちの会社にも一人だけですが、中途採用の社員が入ってくる(C/C++の若干の知識あり)ので、その人に何を教えるべきか考えています。下記は個人的に教えたいなぁと考えている項目。 ポータブルなコード マクロ 64bit intよりsize_t …

IIS FTPで一時的にフォルダを公開する

ユーザー認証はしない(anonymous)けど、接続元IPを限定することによって、ある程度のセキュリティは維持でき、一定時間が過ぎると仮想ディレクトリごと削除する。そんな機能が必要になったので、適当に作ってみました。やってみると、意外と難しくない。とい…

Win32 File-ID APIs

Windows Vista/2008からは、File IDによるファイル処理が標準で実装されている。これは、NTFSとかでGetFileInformationByHandleを使って取得できるBY_HANDLE_FILE_INFORMATION::nFileIndex*と同じもの。ファイルIDがわかっていれば、IDとドライブ識別のため…

今の今までCreateProcessの第2引数の意味を勘違いしていた

今まで、 CreateProcess("hoge.exe", "arg1", ...); は、 argv[0] = "hoge.exe" argv[1] = "arg1" となると信じていて疑わなかったけど、実は、 argv[0] = "arg1" となることを今知り、愕然としました! 結局、UNIX系のプロセス開始システムコールとあまり変…

Windows Installerを汎用DBとして使えないか?

実際にやるとかやらないとかじゃなくて、Windows Installerが最近のPCならばほぼ間違いなくインストールされているという現状を考えると、これを汎用DBとして使えないかと考えても悪くないよねって話になる。というか、この実装はフルスクラッチなのか、それ…

Windows Installer(MSI)をSQLでたたく

コードがVBScriptなのは、MSDNのサンプルがほとんどそうだったから。既存のMSIにカスタムアクションを追加する程度ならそんなに難しくないはずでしたが、実はかなり面倒でした。この技法が有効なのは、Visual Studio Installerで作成したインストーラに簡単…

Outlook 2007とPreview HandlerとWOW64

Outlook 2007では、Windows Vistaのエクスプローラと同じPreview Handlerが利用できる。ただし、実のところ実装はいろいろと違うらしく、困った事態がいくつかある。 エクスプローラ上でのPreview Handlerは原則、低い整合性で別プロセスとして起動される 昔…

WOW64のメモリ消費

WOW64overviewでググると一番最初に出てくる文書に恐ろしいことがさらっと書いてある。 "What is WOW64’s Performance and Memory Consumption?" 3. Virtual memory size. WOW64 adds significant virtual memory overhead if two or more instances of the …

環境変数ではまる

調子に乗って、ActivePerlもx64版なんてものをインストールしてしまい、ここまで書きためていたperlコードが動かなくなって無駄にはまりました。単に、WOW64に対する理解が足りなかっただけなんですけど・・・。 ProgramFiles環境変数 この環境変数ですが、6…

Windows Vista 64-bit on mac mini with BootCamp64

"mac mini"に換装した250GBにそのままWindows Vista 64-bit版だけをインストールしました。mac miniだと、元のHDD(120GBの奴)をUSB接続すればそちらからもブート可能なので、正直、完全にWindowsだけのHDDを作ってもあんまり問題にはなりません。万が一のHDD…

Leopard Server on Windows on Mac (?)

Mac

「Virtual Leopard Server Gets Legit」によれば、Appleは、Mac OS X Leopard ServerをAppleのハードウェア上でVMとして動作させることをライセンス的に許容することになったらしい。だとすると、mac mini上で動いているWindows上のVMware Workstationとかで…

mac miniを分解 (Part 2)

Mac

mac miniを分解の続き。というか、フラットケーブルを抜く部分を記述し忘れていたので追加と、ネジの種別についても追記。で、ここからは、DVD/HDDのユニットの分離の部分から。 DVD/HDDユニットのHDDを換装 HDDは、すぐに見える四カ所のネジをゆるめれば簡…

mac miniを分解

Mac

2chでCore2Duo mac miniはメモリを3GBまで認識するということを知って、メモリ増設のために、今更のようにmac miniを分解することに。メモリは、すごく安くなっていて、 Castor SoDDR2-2G-667 DDR2 667MHz SDRAM(PC2-5300) 200Pin S.O.DIMM 2GB UMAXという奴…

infotrace

ユーザーのコピペ履歴からファイル間の相関性を見いだしてファイル探索に役立てようというプロジェクトをSourceForgeに登録した。まだ、コピペのトレースしかできないのだけれども、かなりまじめに考えているプロジェクト。まだまだ何にもできないコードもす…