ファイルのプロパティ→概要→カテゴリ・ソースの書き換えができない

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
なすがに

ファイルのプロパティ→概要→カテゴリ・ソースの書き換えができない

#1

投稿記事 by なすがに » 16年前

先日、ここで
「WinXPにて ファイルのプロパティ→概要を書き換えるには?」
http://www.play21.jp/board/formz.cgi?ac ... &rln=36675
という質問をさせていただいたものです。

VC++を導入し、教えていただいたサンプルをもとに、ファイルのプロパティを書き換えるコードを
書くことにしました。ほとんどサンプルのままなのですが、うまくできないことがあって困っています。

テキストファイルの場合、ファイルのプロパティ→概要タブには、以下のような項目があります。
タイトル、表題、カテゴリ、キーワード、コメント、ソース、作成者、改訂番号
の8つです。

添付したプログラムでは、propidを0x00000002から一つずつ増やし、そこにString 1、String 2と
順に書きこんでいく処理を行っています。実験のためString32までやっています。
しかし、このプログラムを実行したあとにファイルのプロパティを確認すると、

タイトル  String 1
表題    String 2
カテゴリ
キーワード String 4
コメント  String 5
ソース
作成者   String 3
改訂番号  String 8

となっており、カテゴリとソースのところには何も書き込まれていません。
propidの値が間違っているのでしょうか。

カテゴリ、ソースにも目的の文字列を書き込むには、どうすればよいのでしょうか。

実行環境はWinXP Pro SP3、MS VC++でビルド、です。
ほかにも必要な情報がありましたらお教えください。
よろしくお願いいたします。

御津凪

Re:ファイルのプロパティ→概要→カテゴリ・ソースの書き換えができない

#2

投稿記事 by 御津凪 » 16年前

Platform SDK に入っている PropIdl.h に、各プロパティ名のID (PIDSI_*) が載っていますが、
(432行目辺り)
カテゴリとソースは別のところで設定する必要があるようです。
(453行目辺りに PIDDSI_CATEGORY という名前で ID が振られています)

なすがに

Re:ファイルのプロパティ→概要→カテゴリ・ソースの書き換えができない

#3

投稿記事 by なすがに » 16年前

迅速なご回答ありがとうございます。
お返事が遅れ申し訳ないです。

確認しました。なるほど。
カテゴリはDocSummaryInformation Property、
ソースはFMTID_MediaFileSummaryInfo - Propertyになるんですね。

今はまだ、あまりC++に深入りしたくないので、SummaryInformation Property Set
で対応できる部分だけで何とかしたいと思います。

勉強になりました。ありがとうございました。

なすがに

Re:ファイルのプロパティ→概要→カテゴリ・ソースの書き換えができない

#4

投稿記事 by なすがに » 16年前

失礼しました。

「解決!」のマークをつけ忘れていました。

ありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る