谁能告诉我这有啥问题?
Posted
技术标签:
【中文标题】谁能告诉我这有啥问题?【英文标题】:Can any one please tell me what is wrong with this?谁能告诉我这有什么问题? 【发布时间】:2010-07-16 18:05:23 【问题描述】:我是 Bass 的初学者(目前正在从事 MFC 项目),我正在努力解决这个问题。
我看到我应该从BASS_Init
函数开始,但是我找到了两个例子,一个有4个参数,一个有6个。
当我尝试使用该函数时,它只提供了一个没有重载的 5 参数版本,当我尝试使用它时,我的应用程序崩溃了。有没有我可以学习的在 MFC 上使用 BASS 的好例子?或者我在哪里可以找到 API 的文档?
该行是:
BASS_Init(-1,44100,0,this->m_hWnd,NULL);
我试过了:
BASS_Init(-1,44100,0,GetSafeHwnd(),NULL);
但它仍然崩溃
【问题讨论】:
您是否尝试使用调试器找出崩溃发生的位置? 如果你只包含lib而不使用它(注释BASS_int)编译器可以工作吗? 是的,当我包含编译器工作的库时,问题出在函数上(或者我的实现更好),我尝试调试它,它告诉我什么时候我'正在从函数返回,它因“更改指针”错误而崩溃......但我可能会更改的唯一指针是 HWND,它是必需的。问题是我有一个使用 1.8 lib 的工作示例(他们在 1.8 中不需要 HWND 句柄),我有 exe、h 文件和 dll 文件,但没有 lib。而且在网上找不到库,我只得到新的库 2.4,所以我不能使用旧的。 【参考方案1】:BASS_Init()
-函数采用5个参数:
BOOL BASS_Init(
int device, // The device to use... -1 = default device, 0 = no sound, 1 = first real output device
DWORD freq, // Output sample rate
DWORD flags, // A combination of flags
HWND win, // The application's main window... 0 = the current foreground window (use this for console applications)
GUID *clsid // Class identifier of the object to create, that will be used to initialize DirectSound... NULL = use default
);
示例:
int device = -1; // Default device
int freq = 44100; // Sample rate
BASS_Init(device, freq, 0, 0, NULL); // Init BASS
API 文档: http://www.un4seen.com/doc/#bass/BASS_Init.html
【讨论】:
以上是关于谁能告诉我这有啥问题?的主要内容,如果未能解决你的问题,请参考以下文章