unresolved external symbol - What am I doing wrong?

Clip.cpp
Linking...
   Creating library Debug/VOBPlayer.lib and object Debug/VOBPlayer.exp
Clip.obj : error LNK2001: unresolved external symbol _IID_IBasicAudio
Clip.obj : error LNK2001: unresolved external symbol _IID_IBasicVideo
Clip.obj : error LNK2001: unresolved external symbol _IID_IVideoWindow
Clip.obj : error LNK2001: unresolved external symbol _IID_IMediaPosition
Clip.obj : error LNK2001: unresolved external symbol _IID_IMediaSeeking
Clip.obj : error LNK2001: unresolved external symbol _IID_IMediaEventEx
Clip.obj : error LNK2001: unresolved external symbol _IID_IMediaControl
Clip.obj : error LNK2001: unresolved external symbol _CLSID_FilterGraph
Clip.obj : error LNK2001: unresolved external symbol _IID_IGraphBuilder
Debug/VOBPlayer.dll : fatal error LNK1120: 9 unresolved externals


**********  What am I doing wrong?

header files:

#include "stdafx.h"
#include <dshow.h>
#include "VOBPlayer.h"
#include "Clip.h"
EvausAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

n_fortynineCommented:
Make sure your project settings are correct. These usually happen when you are using afx but not specifying so.
0
IngvarWolfCommented:
According to names in error messages you use some interfaces (COM technology). Interface is an abstract class i.e. class containig pure virtual functions. May be you are trying to create an object of some class which has no realization of some of such functions? I think you should check in that direction.

If this possible - what declarations do you have in VOBPlayer.h, Clip.h and stdafx.h?
0
gotenksCommented:
my guess is you need to define those symbol. i have faced this type of problem before, but for my case, i forget to define my function implementation. for example :

/* main.cpp */

/* function declaration */
void foo();

int main() {
   foo();
   return 0;
}

/* end of main.cpp */

the syntax is fine but when the compiler wish to link, it cannot find the actual implementation of the function foo(), so i get the unresolved external symbol for foo() error. after i added the code for foo(), it is fine.
0
icehandsCommented:
Are you linking with strmiids.lib?  According to MSDN all DirectShow applications have to link with strmiids.lib (included with the DirectX SDK).


Strmiids.lib:

Exports class identifiers (CLSIDs) and interface identifiers (IIDs). All DirectShow applications require this library.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dx8_c/directx_cpp/htm/buildingdirectshowapplications.asp

When I remove this library from my projects I get the same linker errors.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
helmet275Commented:
unresolved external symbols come from not link your project correctly.  in your project settings make sure these library are linked with your project:

winmm.lib , msvcrt.lib, strmiids.lib

for more info on use the DirectX SDK help and look up DirectShow FAQ.  this list exactly what files need to be linked based on what type of build you are making.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C++

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.