我对 Visual Studio 完全陌生,在使用 Visual Studio 2008 启动项目时遇到一些问题。我正在尝试使用 MAPI,当我去构建项目时收到如下错误消息:

“函数 _main 中引用了未解析的外部符号 _MAPIUninitialize@0”

我知道我需要链接到 MAPI32.lib,但到目前为止我找到的指南表明转到“Visual Studio 设置” 关联 选项卡”并将其添加到那里(这显然是来自旧版本的 Visual Studio)。我在 VS 2008 的项目属性链接器或 C/C++ 部分中找不到类似的内容。

我需要在哪里告诉 Visual Studio 使用该库?

谢谢

有帮助吗?

解决方案

这是在项目属性/配置属性/链接器/输入/附加依赖

在屏幕的底部的帮助提示说“指定附加项添加到行线(例如:KERNEL32.LIB)”

其他提示

项目属性->链接器->输入->附加依赖项

您还可以使用#pragma comment( lib, "mapi32" )在您的源文件之一中。正如 MSDN 所指出的,这里是使用 pragma 技术的类似库添加 MSDN - 创建基本的 Winsock 应用程序

#include <winsock2.h>
#include <ws2tcpip.h>
#include <stdio.h>

#pragma comment(lib, "Ws2_32.lib")

int main() {
  return 0;
}

三个简单的步骤:

  1. 项目属性-->接头的事额外的图书馆目录 选择的文件夹,其中包含你的.lib文件

2.项目属性-->接头->的输入->其他依赖关系 只要输入的名字你的.lib文件

3.项目属性-->C/C++事外包括目录 选择的文件夹里你的.h文件的查找

也可以只拖放库文件在解决方案资源管理项目。

不要静态链接到任何MAPI的DLL。你必须始终动态加载MAPI系统 - 看看MFCMAPI源代码,看看它是如何做:的http:// MFCMAPI。 codeplex.com/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top