Gleich vorneweg,
ich weiß, das hier ist das Irrlicht Forum und nicht das RakNet Forum, aber leider gibt es zu RakNet kein deutsches Forum und da ich gut englische Texte lesen aber nicht schreiben kann, richte ich mich mit folgender Frage an euch(ist sowieso eher was Compiler spezifisches glaube ich).
Ich versuche mit folgendem Code einen String per BitStream zuversenden(der Code ist noch nicht fertig, müste aber theoretisch einwandfrei funktionieren):
Code:
#include <stdio.h>
#include <string.h>
#include "RakNetworkFactory.h"
#include "RakPeerInterface.h"
#include "MessageIdentifiers.h"
#include "BitStream.h"
using namespace RakNet;
#define MAX_CLIENTS 10
#define SERVER_PORT 60000
RakPeerInterface *peer;
bool isServer;
int main(void)
{
char str[512];
char message[512];
bool quit = false;
Packet *packet;
peer = RakNetworkFactory::GetRakPeerInterface();
BitStream bitStream;
printf("(C) or (S)erver?\n");
gets(str);
if ((str[0]=='c')||(str[0]=='C'))
{
peer->Startup(1,30,&SocketDescriptor(), 1);
isServer = false;
} else {
peer->Startup(MAX_CLIENTS, 30, &SocketDescriptor(SERVER_PORT,0), 1);
isServer = true;
}
if (isServer)
{
printf("Starting the server.\n");
// We need to let the server accept incoming connections from the clients
peer->SetMaximumIncomingConnections(MAX_CLIENTS);
} else {
printf("Enter server IP or hit enter for 127.0.0.1\n");
gets(str);
if (str[0]==0){
strcpy(str, "127.0.0.1");
}
printf("Starting the client.\n");
peer->Connect(str, SERVER_PORT, 0,0);
}
while(quit == false) {
printf("Press Q for quit or an other key to run the Programm.\n");
gets(str);
if ((str[0]=='q')||(str[0]=='Q'))
{
quit = true;
}
printf("Enter a string to show on the Server/Client:");
gets(message);
bitStream.Write(message);
peer->Send(BitStream * bitStream,HIGH_PRIORITY,RELIABLE,0,UNASSIGNED_SYSTEM_ADDRESS,true);
//peer->Send( const RakNet::BitStream * bitStream, PacketPriority priority, PacketReliability reliability, char orderingChannel, const AddressOrGUID systemIdentifier, bool broadcast )=0;
}
RakNetworkFactory::DestroyRakPeerInterface(peer);
return 0;
}
Bei dieser Zeile: peer->Send(BitStream * bitStream,HIGH_PRIORITY,RELIABLE,0,UNASSIGNED_SYSTEM_ADDRESS,true);
bekomme ich aber diesen Error: error C2275: 'RakNet::BitStream': Ungültige Verwendung dieses Typs als Ausdruck
Hat jemand eine Idee was der Compiler für ein Problem hat?