気楽に沖をめざして進め

プログラムに関することをいろいろ試してみます。 プログラムの海で溺れない程度にね。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書く事で広告が消せます。
スポンサー広告 |

Windows7のライブラリのメモ

Windows7にライブラリっていう機能があります。

仮想フォルダというか、フォルダのエイリアスというか、いろんな場所に保存しているファイルをひとつのフォルダとして見える機能で、例えばライブライに標準であるドキュメントは、マイドキュメントとパブリックのドキュメントが含まれています。

で、このライブライ機能をプログラムに組み込もうとすると、

http://msdn.microsoft.com/ja-jp/magazine/dd861346.aspx
とか
http://msdn.microsoft.com/ja-jp/library/ff934858.aspxなどを見ながら頑張るのかな〜ってな感じですが、実際に作ってみるとプログラム以外にも引っかかることがあったので、そのメモを書いておきます。

・Windows7SDKのインストールが必要。
・VCのバージョンによっては(多分VC2008以前)、、includeとlibのパスの第一優先をWindows7SDKのincludeとlibにすること。
・VCのバージョンによっては(多分VC2008以前)、stdafx.hの先頭に#define NTDDI_VERSION NTDDI_WIN7 の定義をする。
VC2005で作成する場合は、KB949009(http://support.microsoft.com/kb/949009)のパッチをインストールすること。

・ライブラリの実態は、\Users\<ユーザー名>\AppData\Roaming\Microsoft\Windows\Librariesフォルダにある*.Library-msというxmlファイルに設定値が書いてある
・パス名ではなく、ITEMIDLISTを使用する。(なので、FindFirstFile()/FindNextFile()は使用できない)
・IShellFolder、IShellItem、IShellLibraryなどのインターフェースを使用する。

・XPで動かすためには、SHGetKnownFolderIDList、SHCreateItemFromParsingName等XPが持ってない命令は、スタティックにリンクしないで、動的ロードする必要がある。

解ってしまえば、どうってことないんですが、サンプルプログラムをコンパイルできるようになるまで、結構苦労しました。

その後、実際にプログラムしようとすると、ITEMIDLISTとはなんぞや?とか、ITEMIDLISTとかIShellFolderをどうやって取得するんだとか、沢山の敵が襲ってきて楽しいです。

テーマ:プログラミング - ジャンル:コンピュータ

Windows | コメント:0 | トラックバック:0 |

Advanced Vector Extensions プログラミング・リファレンス

インテルのサイトに、次期CPUにSandy Bridgeに実装されるAVX命令についての日本語の資料がありました。

インテル Advanced Vector Extensionsプログラミング・リファレンス
http://download.intel.com/jp/software/AVE/319433-006JA.pdf

やっぱ日本語で読めるっていいですね。

今までこれに気がつかなくて、

http://software.intel.com/en-us/avx/

をグーグルをの翻訳使ってみてました。
開発資料 | コメント:0 | トラックバック:0 |

Visual Studio 2010 日本語版は4月20 日!

 Visual Studio 2010 日本語版のMSDNの提供が4月20日に決まったようです!

「Microsoft(R) Visual Studio(R) 2010 日本語版」を 4 月 20 日(火)より順次提供開始

 ボリュームライセンスが5月1日で、パッケージが6月18日とのこと。

 英語版は既にMSDNでダウンロードできるようですが、あと1週間なら日本語版ダウンロードできるようになるまで待ちます。
備忘録 | コメント:0 | トラックバック:0 |

Windows Driver Kit Version 7.0.0

 WDK(旧名DDK)がいつの間にかDonload Centerでダウンロードできるようになったようです。

 Windows Driver Kit Version 7.0.0

 ただサポートするOSが、Windows 7, Windows Vista, Windows XP, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003との表記なので、このWDKではWindows 2000のサポートはなくなったようですね。

 ちなみにWLKは、今まで通り、Microsoft Connect からの入手のようです。

テーマ:プログラミング - ジャンル:コンピュータ

開発資料 | コメント:0 | トラックバック:0 |

Visual Studio 2008 でLNK1000が発生する

 Windows 7上でVisual Studio 2008を使いビルドするとLNK1000が発生するってことに気がつきました。

 検索してみると、KB948127がその修正プログラムのようですね。

Visual Studio 2008 でオプションをビルド、/INCREMENTAL を使用して、Visual C++ プロジェクトをリンクすると、エラー メッセージ:"LNK1000: IncrBuildImage 中に内部エラー"
http://support.microsoft.com/kb/948127/ja

修正プログラム:VS90-KB948127.exe

 上記のよくわからない説明をみると、インクリメンタルリンクオプションを使用したときってことなので、単にインクリメンタルリンクオプションをオフにすればよかったのかな?

 修正プログラムを適応してたら、普通にビルドできたからまあいいか。

テーマ:プログラミング - ジャンル:コンピュータ

備忘録 | コメント:1 | トラックバック:0 |
| HOME | NEXT