适用于VC ++ 2010的SDK?

时间:2012-08-15 04:25:42

标签: visual-c++ sdk

我仍在尝试使用网络,而不是使用Beej的教程,我转向MSDN.com。它说我需要包含“Ws32_32.lib”作为库。我找不到这个库,我相信它是VS 2010 SDK。我对SDK进行了DL操作,它只适用于专业版或终极版或其他版本。也许我刚刚在这里回答了我自己的问题,但有没有办法真正使用VS快递的Windows套接字?我理解专业或最终成本过高的资金(因为它们是为企业制作的,我只是一个新手/业余爱好者)。有没有办法使用VS快递的Windows套接字?

也许我应该转向代码块或QT ......

2 个答案:

答案 0 :(得分:1)

您是否查看了MSDN Getting Started with Winsock指南?提供的示例代码适用于使用简单的Visual C ++ 2010 Express。这个片段干净地编译,#pragma告诉链接器需要哪个库。

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

// link with Ws2_32.lib
#pragma comment(lib, "Ws2_32.lib")

int main()
{
    WSADATA wsaData;

    // Initialize Winsock
    int result = WSAStartup(MAKEWORD(2, 2), &wsaData);
    if (result != 0) {
        printf("WSAStartup failed: %d\n", result);
        return 1;
    }

    // Your code here

    WSACleanup();
    return 0;
}

答案 1 :(得分:0)

winsock库是Ws2_32.LIB,是连接lib的windows socket dll。您将在Microsoft SDK lib文件夹中找到它。就我而言,它位于C:\ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ Lib。 Visual Studio已经应该知道这条路了。如果您在链接器选项(链接器 - &gt;输入 - >其他库)中简单地指定此lib,那么您实际上是隐式链接系统winsock dll Ws2_32.dll。您也可以使用#pragma comment(lib, "ws2_32.lib")

SDK与Visual Studio的版本没有直接关系,就像专业版,终极版一样。您甚至可以从VS2010的命令行或快速版本使用SDK。 SDk可以独立于Visual Studio安装。如果您的visual studio无法找到SDK lib的路径,那么您需要检查设置。在VS2010的配置项目设置中,VC ++目录有一个选项。在右侧,您将看到“Library Directories”检查是否在那里指定了SDK lib。检查宏的$(WindowsSdkDir)lib。