问题
I'm completely new to Visual Studio and I'm having some trouble getting a project started with Visual Studio 2008. I'm experimenting with MAPI, and I'm getting error messages like this when I go to build the project:
"unresolved external symbol _MAPIUninitialize@0 referenced in function _main"
I know I need to link to MAPI32.lib, but the guides I have found thus far have indicated going to the "Visual Studio settings link tab" and adding it there (which was - apparently - from an older version of Visual Studio). I can't find anything like that in the project properties linker or C/C++ sections of VS 2008.
Where do I need to tell Visual Studio to use that library?
Thanks
回答1:
It's under Project Properties / Configuration Properties / Linker / Input / Additional Dependencies.
The help tip at the bottom of the screen says "Specifies additional items add to the line line (ex: kernel32.lib)".
回答2:
Project Properties->Linker->Input->Additional Dependencies
You can also use
#pragma comment( lib, "mapi32" )
in one of your source files. As noted MSDN here is a similar library addition using the pragma technique MSDN - Creating a Basic Winsock Application
#include <winsock2.h>
#include <ws2tcpip.h>
#include <stdio.h>
#pragma comment(lib, "Ws2_32.lib")
int main() {
return 0;
}
回答3:
Three simple steps:
- Project Properties->Linker->General->Additional Library Directories choose the folder which contains your .lib file
2.Project Properties->Linker->Input->Additional Dependencies Just enter the name of your .lib files
3.Project Properties->C/C++->General->Additional Include Directories choose the folder where your .h files locate
回答4:
It is also possible to just drag'n'drop library file to project in Solution Explorer.
回答5:
Do not statically link to any MAPI dlls. You must always dynamically load the MAPI system - look at the MFCMAPI source code to see how it is done: http://mfcmapi.codeplex.com/
来源:https://stackoverflow.com/questions/1114914/add-library-to-visual-studio-2008-c-project