visualc&x2B+;程序抱怨net框架 我在Visual C++ 2010中编写了一个简单的客户端程序,它使用Winsock连接到客户端。当我试图在另一台计算机上运行此程序时,它会抱怨缺少网络框架。 我想知道为什么会这样?我的代码中有什么需要net framework
错误消息: 应用程序中,必须首先安装以下版本之一的 .NETFramework v4.0…等等 这是我的密码visualc&x2B+;程序抱怨net框架 我在Visual C++ 2010中编写了一个简单的客户端程序,它使用Winsock连接到客户端。当我试图在另一台计算机上运行此程序时,它会抱怨缺少网络框架。 我想知道为什么会这样?我的代码中有什么需要net framework,c++,visual-c++,winsock,C++,Visual C++,Winsock,错误消息: 应用程序中,必须首先安装以下版本之一的 .NETFramework v4.0…等等 这是我的密码 #pragma once #pragma comment(lib, "Ws2_32.lib") #include "stdafx.h" #include <sdkddkver.h> #include <WinSock2.h> #include <Windows.h> #include <iostream> #include <str
#pragma once
#pragma comment(lib, "Ws2_32.lib")
#include "stdafx.h"
#include <sdkddkver.h>
#include <WinSock2.h>
#include <Windows.h>
#include <iostream>
#include <string>
#include <time.h>
#include <cstring>
#include <sstream>
#define SCK_VERSION2 0x020
using namespace std;
void main() {
long Successful;
WSAData WinSockData;
WORD DLLVersion;
DLLVersion = MAKEWORD(2,1);
Successful = WSAStartup(DLLVersion, &WinSockData);
int sd,rcv,i,myint = 1;
hostent *host = gethostbyname("localhost");
char * myhostadd = inet_ntoa (*((struct in_addr *) host->h_addr_list[0]));
string memzi2,memzi,Converter;
char Message[200],tell[200] = "haa";
SOCKADDR_IN Address;
SOCKET sock;
sock = socket(AF_INET,SOCK_STREAM,NULL);
Address.sin_addr.s_addr = inet_addr(myhostadd);
Address.sin_family = AF_INET;
Address.sin_port = htons(7177);
cout << "Connecting to server...";
Successful = connect(sock, (SOCKADDR*)&Address, sizeof(Address));
u_long iMode=1;
ioctlsocket(sock,FIONBIO,&iMode);
if (Successful == 0) {
cout << "Connected. "<< endl;
for (;;++i) {
std::stringstream convert2;
convert2 << myint;
memzi2 = convert2.str();
std::cout << "Client: " << memzi2 << std::endl;
const char * c = memzi2.c_str();
sd = send(sock, c, sizeof(tell), NULL);
cout << "Server: ";
rcv = recv(sock,Message,sizeof(Message),NULL);
Converter = Message;
cout << Converter << endl;
std::stringstream convert1(Converter);
convert1 >> myint;
if (myint > 5000) {
myint = 1;
}
++myint;
}
closesocket(sock);
}
else cout << "Failed." << endl;
cout << "\n\n\t";
system("pause");
exit(1);
}
#pragma一次
#pragma注释(lib,“Ws2_32.lib”)
#包括“stdafx.h”
#包括
#包括
#包括
#包括
#包括
#包括
#包括
#包括
#定义SCK_版本2 0x020
使用名称空间std;
void main(){
长期成功;
WSAData-WinSockData;
词汇转换;
DLLVersion=MAKEWORD(2,1);
Successful=WSAStartup(DLLVersion和WinSockData);
int-sd,rcv,i,myint=1;
hostent*host=gethostbyname(“本地主机”);
char*myhostadd=inet\u ntoa(*(地址中的结构)主机->地址列表[0]);
字符串memzi2、memzi、转换器;
字符消息[200],告诉[200]=“haa”;
地址为SOCKADDR_;
插座;
sock=socket(AF_INET,sock_STREAM,NULL);
Address.sin_addr.s_addr=inet_addr(myhostadd);
Address.sin_family=AF_INET;
Address.sin_port=htons(7177);
CUT可以是一个简单的原因,它将使用C++ CLI,即公共语言运行库。转到Project属性并修复它,它将不再显示。
代码中有很多问题。要提到的是:循环永远,你发送的数据比实际数据多,你从不检查错误。是的,我知道。我应该调查一下。但是我是SP。特别是询问.net framework请求。您使用什么样的VisualStudio项目?希望是Win32 Console应用程序而不是CLR Console应用程序?是的,它是CLR Console呵呵。将其更改为Win32 Console,它可以工作。谢谢!