首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >visual c++中的irda套接字编程

visual c++中的irda套接字编程
EN

Stack Overflow用户
提问于 2015-10-08 11:34:19
回答 1查看 192关注 0票数 1

你好,我是纽比,去irda套接字。我有一个macbook,有一个内置的苹果IR循环。我使用的是visual studio 2013,

代码语言:javascript
复制
#include <af_irda.h>
#include <winsock2.h>
#incude <iostream>
using namespace std;
#pragma comment(lib,"ws2_32.lib")

int main()
{
    WORD wVersion = MAKEWORD(2,2);
    WSADATA wSaData;
    if(WSAStartup(wVersion), &wSaData))
    {
        cout << "Failed to initialize winsock library!\n";
        return 1;
    }

    int irSock = socket(AF_IRDA, SOCK_STREAM, 0);
    if(irSock == SOCKET_ERROR)        
    {
        cout << "Socket creation failed!   error code: " << WSAGetLastError() << endl;
    }

    //the socket creation failed with 10047


    cout << endl << endl << endl;
    system("pause");
    return 0;
}

这是否意味着我的笔记本电脑没有irda适配器?如果是的话,那什么是红外接收器呢?我们不能用IR接收器来编写irda套接字应用程序吗??*请任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-14 22:02:09

1-套接字创建失败,当不支持地址家族时,WSAGetLastError()返回10047。(错误不属于硬件,而属于平台)

在windows7上,8,10 (几乎所有新的windows7都不包括irDA支持)我们得到了这个错误,而在windows7上,linux的套接字创建成功了,但这并不意味着您的膝上型计算机/pc必须附带irDA适配器。

2- IR接收器不是irDA适配器: IR接收器只是一个读取IR命令的哑接收器(这很难!)IRDA是一种复杂的双向协议,涉及可靠的通信和确认,通常用于在手持设备和笔记本电脑或PC之间传输文件或模拟串行接口。或者,正如Wannabe所说,你想要一个红外接收器,因为IRDA不知道如何听远程命令。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33014581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档