• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:現在DirectSoundの初期化で悩んでいることがあります。ライブラ)

DirectSoundの初期化でエラーが発生する

このQ&Aのポイント
  • DirectSoundの初期化でエラーが発生しています。ライブラリファイルとインクルードファイルは設定済みですが、大量のエラーが出ます。
  • エラーの内容は『LPCWAVEFORMATEX』と『WAVEFORMATEX』の再定義、識別子の『lpwfxFormat』がメンバではないなどです。
  • 自分のソースコードを何度も確認しましたが、エラーの原因が特定できません。似た経験がある方、解決方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

ヘッダだけ外すと どうなる? (frameworksとかで定義されてるかもという話)

pjgam
質問者

補足

ヘッダが悪いというSAYKAさんのアドバイスを元にヘッダの位置をいろいろいじってみるとうまくいきました! dsound.hとmmsystem.hのインクルードする位置か順番が悪かったみたいです。ありがとうございました!!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • lstrcpyが使えない

    #include <dshow.h> としてlstrcpyを加えたコードを bcc32でコンパイルするとエラーが出ます。他にも色々使えない関数が出てきました。 --------------------------------------------- #include <windows.h> #include <dshow.h> int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR lpCmdLine,int nCmdShow){ TCHAR ore[64]; lstrcpy(ore,TEXT("こんにちは")); return 0; } --------------------------------------------- bcc32 -I"C:\Borland\Bcc55\Include" -L"C:\Borland\Bcc55\Lib" -I"C:\Program Files\Microsoft DirectX 9.0 SDK (October 2005)\Include" -L"C:\Program Files\Microsoft DirectX 9.0 SDK (October 2005)\Lib" -I"C:\Program Files\Microsoft Platform SDK\Include" -L"C:\Program Files\Microsoft Platform SDK\Lib" -W test.cpp --------------------------------------------- エラー E2451 test.cpp 7: 未定義のシンボル lstrcpy_instead_use_StringCbCopy_or_St ringCchCopy(関数 __stdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) ) もし解決方をご存知の方がいらっしゃいましたらご教授なにとぞお願い致します。

  • 別環境に移植するとヘッダファイル内でエラーが出ます

    ある開発環境ではコンパイルできたソースコードを、別の環境に移したところ、コンパイルができなくなってしまいました。 以前の環境の詳細が分からないので困っています。 以下、現在の環境とエラーについて記述します。 現在の開発環境:VC++ 6.0 OS:WindowsXP Professional DirectX9 SDK、PlatForm SDK をインストール済 (先程インストールしました) コンパイルを行ったところ、'DWORD_PTR'に関するエラーが大量に出ました。 エラーメッセージの一例: C:\DXSDK\INCLUDE\dxtrans.h(2580) : error C2061: 構文エラー : 識別子 'DWORD_PTR' がシンタックスエラーを起こしました。 C:\DXSDK\INCLUDE\mmstream.h(99) : error C2065: 'DWORD_PTR' : 定義されていない識別子です。 コードの冒頭では以下の順でヘッダファイルをインクルードしています。 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <dshow.h> #include <qedit.h> #include <math.h> #include <time.h> #include <winsock2.h> #include <stdarg.h> インクルードの優先順位の問題かと考えましたが、以前の環境ではこのコードのままで動いていたので、頭をひねっています。 どなたか、知恵を貸していただけませんか? よろしくお願いします。

  • DirectX サンプル エラー

    こんにちは。DirectXプログラミング初心者です。 Visual C++ 2005 Express Editonで開発しております。 Platfrom SDKもインストール済みです。 DirectX 9.0 SDKの最新版のサンプルをコンパイルしようとすると、 fatal error C1083: include ファイルを開けません。'dimm.h': No such file or directory とエラーがでてコンパイル出来ません。 また、工学社の「DirectX9 DirectX Graphics」という本に付属しているDirectX 9.0 SDK(December 2004)をインストール(新しいSDKを消して)して、付属のサンプルをコンパイルすると、 DXGSample01.obj : error LNK2019: 未解決の外部シンボル _DXTraceW@20 が関数 "long __cdecl InitApp(struct HINSTANCE__ *)" (?InitApp@@YAJPAUHINSTANCE__@@@Z) で参照されました。 DXGSample01.obj : error LNK2019: 未解決の外部シンボル _D3DXCreateSprite@8 が関数 "long __cdecl InitDXGraphics(void)" (?InitDXGraphics@@YAJXZ) で参照されました。 DXGSample01.obj : error LNK2019: 未解決の外部シンボル _D3DXCreateTextureFromFileW@12 が関数 "long __cdecl InitDXGraphics(void)" (?InitDXGraphics@@YAJXZ) で参照されました。 DXGSample01.obj : error LNK2019: 未解決の外部シンボル _Direct3DCreate9@4 が関数 "long __cdecl InitDXGraphics(void)" (?InitDXGraphics@@YAJXZ) で参照されました。 Debug/DXGSample01.exe : fatal error LNK1120: 外部参照 4 が未解決です。 と出てきます。 コンパイラの方の「プロパティ」→「構成プロパティ」→「リンカ」→「入力」の「追加の依存ファイル」に d3d9.lib d3dx9dt.lib dxerr9.lib dxguid.lib の4つは追加済みです。 インクルードパス・ライブラリパスがおかしいのでしょうか? ご回答お願いいたします。

  • DirextXエラー:ファイル'dxerr9.lib'を開くことができません。

    ------------------------------------ fatal error LINK1104: DirextXエラー:ファイル'dxerr9.lib'を開くことができません。 ------------------------------------ Visual Studio.NETで、 上のようなエラーが出て実行できません。 インクルードファイルに D:/Program Files/DX9SDK(April 2005)/Include プロジェクトのプロパティ→リンカ→入力→追加の依存ファイルに dsound.lib dinput8.lib dxerr9.lib d3dx9.lib d3d9.lib d3dxof.lib dxguid.lib 以上2つを設定してあります。 本(DirectX ゲームグラフィックスプログラミング ver2.0)の通りに設定したはずなのですが、なぜかエラーが出ます。 どこが問題なのかまったく分からないので、なにか問題がありそうなところがあったら教えてください。 以下、ビルド環境です。 VAIO VGN-S2 Pentium M (1.60GHz) 256MB MOBILITY RADEON 9200 WinXP Home version 2002 SP2 Visual Studio .NET 2003 よろしくお願いします。

  • ヘッダーファイルについて

    //DMusic7Ex.h あるプログラムを解析しています。 //コンパイラ設定 //多重定義防止 #pragma once //ファイルインクルード #include <dmusicc.h> #include <dmusici.h> //型定義 typedef IDirectMusicPerformance* LPDIRECTMUSICPERFORMANCE; typedef IDirectMusic* LPDIRECTMUSIC; typedef IDirectMusicLoader* LPDIRECTMUSICLOADER; typedef IDirectMusicSegment* LPDIRECTMUSICSEGMENT; //関数プロトタイプ 1・DMusic7Ex.cppを作らず他の関数で、このヘッダーファイルをインクルードする手法は一般的なのか? 2・なぜ関数プロトタイプを記述しないで、このタイプ宣言を他のファイルで使用するのは一般的なのか?

  • Visual C++でのfelicaプログラム

    SONYのサイトで、SDK for NFC Starter Kit が公開されているので、ためしにFelicaカードの読み取りプログラムを作ってみようと思っています。 サンプルとして、C++が載っていましたので、Visual C++ 2010で動かそうとしましたが、 「error LNK2019: 未解決の外部シンボル __imp__initialize_library が関数 _wmain で参照されました」と表示されます。 プロジェクトのプロパティで、C/C++ → 全般 → 追加のインクルードディレクトリ もSDKのincludeのディレクトリを指定しましたし、 同じく リンカー → 全般 → 追加のライブラリディレクトリ もSDKのlibのディレクトリを指定しました。 エラーを解決する方法を教えてください。 よろしくお願いします。 なお、プログラムは簡単な下記のものでもエラーがでます。 #include "stdafx.h" #include <cstdio> #include <cstdlib> #include "felica.h" int _tmain(int argc, _TCHAR* argv[]) { initialize_library(); return 0; }

  • リンク時エラー

    DirectShowのSampleGrabberを使ったプログラムをborland C++ コンパイラでコンパイルしようとしたときにエラーが出てしまいます。 bcc32 -I"C:\Borland\Bcc55\Include" -L"C:\Borland\Bcc55\Lib" -I"c:\Program Files\Microsoft Platform SDK\Include" -L"c:\Program Files\Microsoft Platform SDK\Lib" -L"C:\Program Files\Microsoft DirectX 9.0 SDK (October 2005)\Lib" -------------------------------------------------- Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland Error: 外部シンボル '_CLSID_SampleGrabber' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAI L.OBJ が参照) Error: 外部シンボル '_IID_ISampleGrabber' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL .OBJ が参照) Error: 外部シンボル '_MEDIATYPE_Video' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL.OB J が参照) Error: 外部シンボル '_MEDIASUBTYPE_RGB24' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL .OBJ が参照) Error: 外部シンボル '_FORMAT_VideoInfo' が未解決(C:\CPP\DIRECTSHOW\CTHUMBNAIL.O BJ が参照) DierctShowは最近Platform SDKに統合されたらしいのでPlatform SDKからインクルードしています。 ご存知の方がいらっしゃいましたらご教授お願い致します。

  •  OpenCV2.1.0でのコンパイルエラーについて、質問があります。

     OpenCV2.1.0でのコンパイルエラーについて、質問があります。  初心者で至らない点があるかと思いますが、ぜひ回答よろしくお願いします。  動画キャプチャを再生するプログラムを作ろうと、DirectXを利用しています。  (Visual C++ 2010 expressを使っています)  インクルードファイルでの<cv.h>や<dshow.h>は、Microsofot windows SDK 6.1  やOpenCv2.1.0をインストールして、VC++ディレクトリ中の   インクルードファイル(*.h)は    c:\OpenCV2.1\include\opencv   ラ イブラリファイル(*.lib)は    c:\OpenCV2.1\lib   ダイナミックリンクライブラリ ファイル(*.dll)は    c:\OpenCV2.1\bin  (これは、”実行可能なファイル"のところへ)  設定して、コンパイルエラーは出ないようになりました。  しかし、   「インクルードファイル(*.h)は  c:\OpenCV2.1\include\opencv」  の処置のおかげで、同一フォルダに入っている   「cxtypes.h」と「cxoperations.hpp」の二つで、下記のようなコンパイルエラーが出ます。   エラーメッセージ > error C3862: /clr:pure または /clr:safe を伴うアンマネージ関数を   コンパイルできません  インラインのネイティブ アセンブリはマネージ コードで   サポートされていません >error C3645: : __clrcall は、ネイティブ コードにコンパイルされた関数  では使用できません  上のエラーから、clrの問題と考えて、.NET .Freamework 4.0(x68)を  新しくインストールしましたが、上のエラーが解決せず、コンパイルできません。  VC++ディレクトリ中のリンカーは、     strmiids.lib     cv.lib     cxcore.lib     highgui.lib     dxerr.lib     dxguid.lib     d3dx9.lib     d3dx10.lib     d3d9.lib     winmm.lib     comctl32.lib     strmbase.lib  にしました。  コンパイルエラーを解決する方法をご教示くださると、大変幸いです。  よろしくお願いします。

  • VC++ 2008 Express EditionでWinInet.hのインクルードができない

    Visual C++ 2008 Express EditionにてWinInet.hを使いたいのですが、インクルードすると283件のエラーが吐き出されます。 そのエラーの内容はWinInet.hのソースに不備があるというもので、「;」による構文エラー、型指定がありません、シンボルがオーバーロードできないなどです。 しかしエラー箇所のソースに不備はありません。色々調べましたがこの現象に該当するものが見つかりませんでした。 WinInetを使うときは何か特別な手続きが必要なのでしょうか? WinSock.hのインクルードだとエラーなくコンパイルできるのですが・・・。

  • namespace名前空間をヘッダファイル間で共用したい

    環境: WinXP, VisualStudio2005 目的: 現在WinAPI系のライブラリを作っているのですが、以下のような 状況で、namespaceを.cppファイルだけでなく.hファイルでも共用 出来るようにすることは可能でしょうか? ちなみに以下のコードでは lib.h(5) : error C2653: 'G' : 識別子がクラス名でも名前空間名でもありません。 lib.h(5) : error C2065: 'A' : 定義されていない識別子です。 というエラーが出てきます。 // main.h ---------------------------------------------------- #include "Global.h" int main() { } // Global.h --------------------------------------------------- #pragma once #include "Lib.h" namespace G { const int A = 100; } // Lib.h ------------------------------------------------------- #pragma once #include "Global.h" int b = G::A; //名前空間Gの中にあるAを代入