TCP客户端C3145 我现在使用VisualStudioC++生成.dll,以便在两个程序之间传输数据:本质上,一个程序在事件发生时通知另一个程序。我正试图通过TcP客户端套接字实现这一点

TCP客户端C3145 我现在使用VisualStudioC++生成.dll,以便在两个程序之间传输数据:本质上,一个程序在事件发生时通知另一个程序。我正试图通过TcP客户端套接字实现这一点,dll,global,tcpclient,Dll,Global,Tcpclient,我的头文件如下所示: #include <string> using namespace std; extern "C" { __declspec (dllexport) bool trackerConnect( char* ipAddress, int port ); __declspec (dllexport) void sendEvent ( char* ev); __declspec (dllexport) void disconnect(); }

我的头文件如下所示:

#include <string>

using namespace std;

extern "C"
{
    __declspec (dllexport) bool trackerConnect( char* ipAddress, int port );
    __declspec (dllexport) void sendEvent ( char* ev);
    __declspec (dllexport) void disconnect();
}
鉴于这三个函数都需要访问TcPClient,我将其声明为一个全局变量。然而,当我编译时,我得到错误C3145:全局或静态变量可能没有托管类型。如果我不能将TcPClient声明为全局变量,那么我应该如何在这三个函数中使用它

#define WIN32_LEAN_AND_MEAN

#include "logEvents.h"
#using "system.dll"

using namespace System;
using namespace System::Net;
using namespace System::Net::Sockets;
using namespace System::Text;

TcpClient^ logClient;
NetworkStream^ logStream;

bool trackerConnect( char* ipAddress, int port )
{
    /*Connects to server, gets stream, and returns whether the connection was
    successful or not*/
}

void sendEvent ( char* ev )
{
    /*Converts ev into a Byte array and sends it to the server to notify it 
    that an event has occurred*/
}

void disconnect ()
{
    //closes the connection with the server
}