MS Visual Studio 2012,MFC, bass.dll

Galadriel75
Дата: 14.05.2015 09:09:24
Всем доброго времени суток!

Пытаюсь прикрутить Bass.dll к проге на MFC (Visual C++, Visual Studio 2012):
#pragma comment(lib, "bass")

#include "stdafx.h"
#include <atlstr.h>
#include "Sound.h"
#include "bass.h"

....


Bass.dll - версия 2.4

все файлы (bass.lib, bass.dll, bass.h) имеются и досягаемы для студии...

но на сборке проекта студия таки говорит:

1>...\bass.h(13): error C2628: недопустимый "Sound" с последующим "unsigned" (возможно, отсутствует ";")
1>...\bass.h(13): error C2628: недопустимый "Sound" с последующим "__int64" (возможно, отсутствует ";")
1>...\bass.h(13): error C2371: QWORD: переопределение; различные базовые типы
1> c:\program files (x86)\windows kits\8.0\include\um\windns.h(43): см. объявление "QWORD"
1>
1>Сбой построения.

И в этой 13 строке в хидэре вот что:
typedef unsigned __int64 QWORD;

а окружают 13 строку строки:
#ifndef BASS_H
#define BASS_H

#ifdef _WIN32
#include <wtypes.h>
typedef unsigned __int64 QWORD;
#else
#include <stdint.h>
#define WINAPI
#define CALLBACK

Этот же проект я нарисовал в Embarcadero XE7 C++. Для эмбаркадэры пришлось конвертировать bass.lib в эмбаркадэровский формат и в итоге все пришилось к проекту нормально и все заработало. Но надо все тоже самое, но в Visual Studio. И вот студия отторгает хидэр. Либу не конвертил - взял как есть с сайта баса. Что-то не так в моем проекте - не думаю, что в хидэре ошибка. Может опции какие в свойствах проекта поставить - хрен их знает - я пока еще мало Visual Studio юзал... Кто мог бы подсказать как студию убедить, что в хидэре все на самом деле правильно? - Может быть в свойствах проекта сделать так, чтобы строка #ifdef _WIN32 ложь возвращала?
Galadriel75
Дата: 14.05.2015 09:13:14
PS: Debug/Release... платформа Win32/X64 - но все равно ничего не меняется - ошибки те же и в той же строке...
Dima T
Дата: 14.05.2015 09:18:23
Попробуй заменить эту строчку на
typedef unsigned long long QWORD;
Galadriel75
Дата: 14.05.2015 09:18:41
С топиком пока что отбой, поменял местами строки:
#include "stdafx.h"
#include <atlstr.h>
#include "bass.h"
#include "Sound.h"

и студия вроде перестала ругать хидэр - теперь ругает функцию в моей проге - тут уже сам буду курить...
Galadriel75
Дата: 14.05.2015 09:19:49
Dima T
Попробуй заменить эту строчку на
typedef unsigned long long QWORD;


можно бы, спасибо... но вроде разрулилось... смотрю что и как дальше