0

Winsock を使用してクライアントに接続する単純なクライアント プログラムを Visual C++ 2010 で作成しました。このプログラムを別のコンピューターで実行しようとすると、Net Framework が見つからないというメッセージが表示されます。なぜそうなるのだろうか?ネット フレームワークを必要とする私のコードには何が含まれていますか?

エラーメッセージ:

アプリケーションを作成するには、最初に次のバージョンの .NET Framework 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 <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);
}

前もって感謝します!

4

1 に答える 1

1

単純な理由として考えられるのは、C++ CLI、つまり共通言語ランタイムを使用することです。プロジェクトのプロパティに移動して修正すると、表示されなくなります。

于 2013-03-22T11:39:17.580 に答える