|開発環境|Microsoft Visual C++ 2010 Express (SP1)| |実行環境|Microsoft Windows XP Home Edition (SP3)| |プロジェクトの種類|Win32 コンソール アプリケーション| |プロジェクト名|atltest| |アプリケーションの種類|コンソール アプリケーション| |追加のオプション|空のプロジェクト| atltest.obj : warning LNK4254: セクション 'ATL' (50000040) は '.rdata' (40000040) に異なる属性を伴ってマージされています |IMAGE_SCN_CNT_INITIALIZED_DATA|0x00000040|セクションに初期化されたデータが含まれています。| |IMAGE_SCN_MEM_SHARED|0x10000000|セクションをメモリ中で共有できます。| |IMAGE_SCN_MEM_READ|0x40000000|セクションを読むことができます。| 共有できるというフラグが取れただけで、あまり影響がないのかもしれない。 参考 -[[COMを使う(超簡単例:VCで実行)>http://www.dinop.com/vc/com004.html]] -[[EXEファイルの内部構造(セクション)>http://codezine.jp/article/detail/413]] atltest.cpp #highlight(cpp){{ /* ATLディレクトリの追加 構成プロパティ/VC++ ディレクトリ ・インクルード ディレクトリ:C:\WinDDK\7600.16385.1\inc\atl71 ・ライブラリ ディレクトリ:C:\WinDDK\7600.16385.1\lib\ATL\i386 構成プロパティ/リンカー/コマンド ライン ・追加オプション:/ignore:4254 */ #include <atlbase.h> #import "wmp.dll" high_method_prefix("M") named_guids using namespace WMPLib; int main() { BSTR bstrURL = L"C:\\tmp\\hoge.mp3"; HRESULT hr; hr = CoInitialize(NULL); CComPtr<IWMPPlayer4> player; hr = player.CoCreateInstance(CLSID_WindowsMediaPlayer); hr = player->MopenPlayer(bstrURL); player = NULL; CoUninitialize(); return 0; } }}