1

ファイルの「概要情報」を編集しようとしています。正常に動作する次のコードを見つけました。しかし、そのコードを自分のプロジェクトに持ち込もうとすると、リンク段階でビルドが失敗します。 http://www.codeproject.com/Articles/16314/Access-the-Summary-Information-Property-Set-of-af

エラー

1>Linking... 
1>FileSummaryInfo.obj : error LNK2020: unresolved token (0A000015) IID_IPropertySetStorage 
1>FileSummaryInfo.obj : error LNK2001: unresolved external symbol IID_IPropertySetStorage
1>E:\software\TagMyPics\TagMyPics\Debug\TagMyPics.exe : fatal error LNK1120: 2 unresolved externals

私が取り組んでいるプログラムは、画像内の顔を識別することができます。画像ファイルがプログラムに提供されると、プログラムは顔を検出し、データベースを検索して人物の名前を見つけます。名前がデータベースにない場合、ユーザーは名前を入力するように求められます。次に、名前が画像ファイルの概要にキーワードとして追加されます。そのため、友人が写っている画像を見つけたい場合は、名前で簡単に検索できます。このために、Keyword プロパティを編集します。

グーグルは、これは Win32 コンソール アプリケーション (オリジナル) と Win32 フォーム アプリケーション (私のバージョン) の違いが原因である可能性があることを示唆しました。しかし、これを機能させるための解決策を見つけることができませんでした。これまたは代替の解決策を提案できますか?

4

2 に答える 2

1

標準ライブラリにリンクしないオプションがオフになっていることを確認できますか (デフォルトではオフになっています)。必要なヘッダーが含まれていること、および C++ ファイルを C++ 言語モードでコンパイルおよびリンクしていることを確認してください。他のすべてが失敗した場合は、新しいプロジェクトを開始して、すべてのソース ファイルを再度追加してみてください。このリンクの手順を試してください

于 2013-03-02T23:17:29.003 に答える
1

「プロジェクト プロパティ ページ」 > 「構成プロパティ」 > 「一般」 > 「共通言語ランタイム サポート」を/clrに変更しました。以前は /clr:pure でした。今それは動作します

/clr では、マネージ機能とアンマネージ機能の両方を使用できます。詳細については、共通言語ランタイムのコンパイル混合 (ネイティブおよびマネージド) アセンブリを参照してください。

于 2013-03-03T19:25:08.460 に答える