草庐IT

socket_last_error

全部标签

c - SetupDiGetDeviceRegistryProperty : "The data area passed to a system call is too small" error

我有一个使用SetupAPI在WindowsXP上枚举USB设备的代码:HDEVINFOhDevInfo=SetupDiGetClassDevs(&_DEVINTERFACE_USB_DEVICE,0,0,DIGCF_DEVICEINTERFACE|DIGCF_PRESENT);for(DWORDi=0;;++i){SP_DEVINFO_DATAdevInfo;devInfo.cbSize=sizeof(SP_DEVINFO_DATA);BOOLsucc=SetupDiEnumDeviceInfo(hDevInfo,i,&devInfo);if(GetLastError()==ERRO

c++ - 创建远程线程 - ERROR_ACCES_DENIED

我认为我的代码现在终于可以工作了。唯一的问题是,出于某种原因,即使我已经使用PROCESS_ALL_ACCESS打开进程,CreateRemoteThread也会返回一个错误:ERROR_ACCESS_DENIED。错误是通过GetLastError检索到的,它输出“5”,转换为ERROR_ACCESS_DENIED。#include#include#includechar*dllPath="C:\\Users\\Kalist\\Desktop\\Projects\\DLL\\bin\\Debug\\DLL.dll";char*ProcToInject="calc.exe";intma

c++ - socket编程与windows和unix/linux的混淆

您好,我正在尝试使用C++进行套接字编程。我需要确认或拒绝这个逻辑。我认为socket.h头文件是为UNIX系统设计的,而对于Windows,一切都是通过winsock.h完成的。这是正确的吗? 最佳答案 对于Windows,您需要winsock2.h和ws2tcpip.h。在Linux上,您需要sys/socket.h和sys/types.h用于套接字函数和netinet/in.h用于IP相关结构。其他一些区别:Windows使用SOCKET作为套接字描述符,而Linux使用intWindows有closesocket()来关闭套

windows - Powershell 检索作业给出 "cannot index into null array error"

我正在尝试使用以下脚本测试两台PC是否已连接$array='PC1','PC2'for($i=0;$i-lt$array.length;$i++){Start-Job–NameTestConnection$i–Scriptblock{if(test-connection$array[$i]-count1-quiet){write-hostSuccess}else{write-hostNoconnection}}}当我尝试为任何一个执行Receive-Job时,我得到“无法索引到空数组”。我做错了什么? 最佳答案 您需要传入PC名称作

windows - 获取文件 "last saved by"属性而不更改它

我尝试使用PowerShell中的代码行获取文件的属性(所有者):$file="\\networkshare\directory\file.doc"Get-ItemProperty-Path$file|Format-list-Property*-Force提取所有者、修改日期等很容易。但是我想提取“最后保存者”和“修订号”:更新:下面的代码似乎可以工作。但每次我运行脚本时,它都会更改“上次保存者”的值。如何防止这种情况并只读取属性?$word=New-Object-ComWord.Application$word.Visible=$false#topreventthedocumenty

windows - Scala - SBT 设置,bash : syntax error near `=~'

尝试在我的家用电脑windows10上安装scala和sbt进行练习。已安装:Scala版本2.12.4Sbt1.1.4Java版本“9.0.4”Java(TM)SE运行时环境(build9.0.4+11)JavaHotSpot(TM)64位服务器虚拟机(build9.0.4+11,混合模式)在gitbash中运行以下命令(在管理员中)sbtnewscala/projectname.g8得到这个错误/c/ProgramFiles(x86)/sbt/bin/sbt-launch-lib.bash:line126:conditionalbinaryoperatorexpected/c/Pr

C++ socket的send()导致系统错误10053

我正在尝试从我的客户端向我的服务器发送一条消息(目前它们都在同一个进程中运行,但我认为这不重要)。连接建立良好(我可以通过“CurrPorts”看到它-比TcpView用户友好得多)。但是,当我发送消息时,出现错误:“已建立的连接已被主机中的软件中止。”(编号10053)然后连接中断...相关代码如下:boolClient::Send(void*msg,intsize){intsockId=m_socket.GetId();structsockaddr_inremote=m_socket.GetRemotePoint().GetBasePoint();constchar*buf=(co

c++ - AdjustTokenPrivileges 错误 ERROR_NOT_ALL_ASSIGNED

请告知下面代码中指出的错误,为什么会这样?我是C++的新手。我查看了StackO和MSDN(例如link),但它们对我没有帮助,因为我不知道自己做错了什么。HANDLEhToken;if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken)){returnFALSE;}{SetPrivilege(hToken,L"SeBackupPrivilege",1);BOOLSetPrivilege(HANDLEhToken,//accesstokenhandleLPCTSTRlpsz

c++ - Create dir with Qt and Windows' "CreateDirectory"return -1, error

我想做一个简单的应用:在线编辑用户应该给出他/她想在工作目录中创建的目录的路径(路径应该总是这样的:./dirname-现在我不处理任何错误,假设一切正常)并且当他/她单击确定按钮时,应该创建一个名为“dirname”的目录。但是当我通过路径时,让我们说“./testdir”并单击“确定”,我的应用程序退出并显示“ERRORINCREATEDIRECTORY”,当然它不会创建目录。出了什么问题以及如何解决这个问题?我使用的是QtCreator2.8.1基于WindowsXP上的Qt5.1.1(MSVC2010,32位)。代码如下:主窗口.h#ifndefMAINWINDOW_H#def

windows - 为什么 Windows 上的 Perl IO::Socket 在 64 个连接后提示 "Resource Not Available"?

我在Windows下使用Perl创建了一个服务器(ActivePerl5.10.1build1006),它在连接时fork,接受一些JSON数据,并将其写入数据库。在64个客户端连接到服务器后,我遇到了一个问题,在尝试fork时出现错误消息“资源不可用”。在Linux下运行这段代码,我发现有许多已失效的子进程,通过在父进程上添加wait()调用解决了这个问题。然而,这并没有解决问题。在Linux下运行代码可以超过Windows允许的64次调用。我还启动了一个虚拟Windows服务器,以防服务器受到限制,但全新安装的Perl导致了相同的64个连接限制。欢迎任何想法。useIO::Sock