我正在使用Microsoft visual studio express 2012,C ++创建一个程序,用这个mac地址与设备进行简单的蓝牙连接:“00:12:08:24:15:50”,
#include "stdafx.h"
#include <WinSock2.h>
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <bluetoothapis.h>
#include <ws2bth.h>
typedef ULONGLONG bt_addr, *pbt_addr, BT_ADDR, *PBT_ADDR;
int main()
{
WSADATA wsd;
SOCKET client_socket;
SOCKADDR_BTH sa;
BT_ADDR b;
b = 0x001208241550;
WSAStartup (MAKEWORD(1,0), &wsd);
client_socket = socket (AF_BTH, SOCK_STREAM, BTHPROTO_RFCOMM);
memset (&sa, 0, sizeof(sa));
sa.btAddr = b;
sa.port = 1;
if (connect (client_socket, (SOCKADDR *)&sa, sizeof(sa))){
//Perform error handling.
closesocket (client_socket);
return 0;
}
closesocket(client_socket);
CloseHandle ((LPVOID)client_socket);
WSACleanup();
return 0;
}
当我构建它时,它总是给我以下错误:
error LNK2019: unresolved external symbol __imp__closesocket@4 referenced in function _main C:\Users\Strawhatphil\Documents\Visual Studio 2012\Projects\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.obj ConsoleApplication8
error LNK2019: unresolved external symbol __imp__connect@12 referenced in function _main C:\Users\Strawhatphil\Documents\Visual Studio 2012\Projects\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.obj ConsoleApplication8
error LNK2019: unresolved external symbol __imp__socket@12 referenced in function _main C:\Users\Strawhatphil\Documents\Visual Studio 2012\Projects\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.obj ConsoleApplication8
error LNK2019: unresolved external symbol __imp__WSAStartup@8 referenced in function _main C:\Users\Strawhatphil\Documents\Visual Studio 2012\Projects\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.obj ConsoleApplication8
error LNK2019: unresolved external symbol __imp__WSACleanup@0 referenced in function _main C:\Users\Strawhatphil\Documents\Visual Studio 2012\Projects\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.obj ConsoleApplication8
error LNK1120: 5 unresolved externals C:\Users\Strawhatphil\Documents\Visual Studio 2012\Projects\ConsoleApplication8\Debug\ConsoleApplication8.exe ConsoleApplication8
我做错了怎么解决这个问题?
答案 0 :(得分:1)
请注意,您必须将Ws2_32.lib
添加到链接库列表中。
答案 1 :(得分:0)
您需要安装Windows Platform SDK,它将安装许多库。在安装位置的lib目录中将是文件ws2_32.lib,它是您要链接的Winsock2库。
答案 2 :(得分:0)
您必须转到项目的属性然后配置属性,在链接器选项中转到该条目并选择aditional依赖项并进行编辑。添加ws2_32.lib和bthprops.lib库。顺便说一句,我有Windows 7与sdk和visual studio 2013