невозможно связать библиотеку FMOD с проектом VS2010

Я пытаюсь связать FMOD с моим проектом, что я очень легко делал в прошлом в Visual Studio 2008... Поэтому я поместил файл fmodex_vc.lib и fmodex.dll в каталог моего проекта, добавил их в свой проект. обозреватель решений, затем создал файл SoundMgr.h, который включает файл fmod.h

#include "include\fmod\fmod.h"

Где fmod был помещен в папку include\fmod и открывается нормально, если я щелкну правой кнопкой мыши по приведенному выше коду и нажму «Открыть документ»...

Но если я вообще попытаюсь написать какой-либо код, в том числе простое «использование пространства имен FMOD», он скажет мне, что этот FMOD не объявлен или не идентифицирован… я пропустил какой-либо шаг?

РЕДАКТИРОВАТЬ: Как выглядит класс до сих пор:

#pragma once
#include "main.h"

#include "include\fmod\fmod.hpp"
#include "include\fmod\fmod_errors.h"
#include "include\fmod\fmod.h"

class SoundMgr{

    void init();


};


    void SoundMgr::init(){
    FSOUND_Init (44100, 32, 0);

    }

И ошибка:

Error   1   error C3861: 'FSOUND_Init': identifier not found 

И это касается любой строки примера кода, который я пытаюсь импортировать из этого краткого руководства: Краткое руководство по GameDev FMOD

Я попытался добавить библиотеку в качестве дополнительной зависимости в разделе «Ввод» свойств/компоновщика, и я получаю

1. fatal error LNK1181: cannot open input file 'fmodex_vc.lib'

Любая из этих ошибок звонит в колокол?


person Alex    schedule 21.11.2011    source источник
comment
Можете ли вы опубликовать все свои ошибки?   -  person Some programmer dude    schedule 22.11.2011
comment
он просто ничего не распознает, например, если я просто наберу FMOD ::, он говорит, что должен быть классом или пространством имен. Или для FSOUND_Init (44100, 32, 0); это дает мне ожидаемый спецификатор типа   -  person Alex    schedule 22.11.2011
comment
Было бы очень полезно, если бы мы могли видеть полные ошибки и, возможно, также какой-нибудь небольшой и автономный пример. Помимо того, что мы помогаем вам, это может помочь вам увидеть, в чем проблема.   -  person Some programmer dude    schedule 22.11.2011
comment
Я добавил ошибку, спасибо за ваше время, но на самом деле она не содержит гораздо больше информации ... просто кажется, что она не может получить доступ к определениям в заголовках FMOD, хотя они могут быть идеально открыты при щелчке правой кнопкой мыши / открытии файл внутри проекта...   -  person Alex    schedule 22.11.2011
comment
Стоит отметить, что FSOUND_Init — это функция только FMOD 3, и вы связываетесь с fmodex, также известным как FMOD 4, что вызовет проблемы.   -  person Mathew Block    schedule 24.11.2011
comment
Правда, статья на GameDev была очень старой, я использую более новую структуру, в которой вы создаете объекты System, Channel и Sound и используете их для функции воспроизведения.   -  person Alex    schedule 24.11.2011


Ответы (3)


Разве вы не хотите, чтобы fmod.hpp получил функции С++?

person AShelly    schedule 21.11.2011

вы можете включить путь заголовков в C/C++ > General и путь библиотеки к свойствам компоновщика и включить dll в свой проект. В этом случае у вас есть файлы в вашем каталоге выпуска/отладки

person ebianco    schedule 22.11.2011

Итак, я в конце концов исправил это, удалив дополнительную зависимость в разделе ввода компоновщика и вместо этого добавив каталоги Include и Library в каталоги Configuration Properties\VC++.... Большинство статей, которые я нашел, советуют использовать фактический полный путь к FMOD. папку установки, но поскольку я хочу, чтобы этот проект был переносимым и автономным, я создал в своем проекте папки «lib» и «include» и поместил в них эти файлы... (использовал каталоги «\ lib» и «\ include» в свойствах проекта, которые, как я предполагаю, связаны с папкой проекта, никогда раньше этого не делали, но надеюсь, что это не вызовет проблем с зависимостями, если я скомпилирую это на другой машине)...

person Alex    schedule 22.11.2011