SetConsoleTitle cannot convert argument 1 from 'const char [21]' to 'LPCWSTR'

0

witam dlaczego otrzymuje taki error?

void loading(int, char*[]){

#ifdef _WIN32
	SetConsoleTitle(STATUS_SERVER_NAME);
#endif
}
1>source\ss.cpp(58): error C2664: 'BOOL SetConsoleTitleW(LPCWSTR)' : cannot convert argument 1 from 'const char [21]' to 'LPCWSTR'
1>          Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
0

Kompilujesz w trybie unicode, przez co wszystkie (albo prawie wszystkie) funkcje WINAPI oczekują stringów UCS-2. Albo użyj makra TEXT na swojej stałej, albo skonwertuj string na wchar_t, albo wywołaj SetConsoleTitleA, explicite wybierając wersję ASCII.

0
kq napisał(a):

Kompilujesz w trybie unicode, przez co wszystkie (albo prawie wszystkie) funkcje WINAPI oczekują stringów UCS-2. Albo użyj makra TEXT na swojej stałej, albo skonwertuj string na wchar_t, albo wywołaj SetConsoleTitleA, explicite wybierając wersję ASCII.

a jak to wylaczyc w visual studio 2013?

0
kq napisał(a):

Kompilujesz w trybie unicode, przez co wszystkie (albo prawie wszystkie) funkcje WINAPI oczekują stringów UCS-2. Albo użyj makra TEXT na swojej stałej, albo skonwertuj string na wchar_t, albo wywołaj SetConsoleTitleA, explicite wybierając wersję ASCII.

jeszcze jedna sprawa jest
zrobiłem voida ale go nie wczytuje czemU?


void loading(int, char*[]){

#ifdef _WIN32
	SetConsoleTitle(STATUS_SERVER_NAME);
#endif

}

tylko wczytuje to co mam w int main

0

Co do pytania: google nie boli. https://stackoverflow.com/questions/1319461/how-do-i-turn-off-unicode-in-a-vc-project

Co rozumiesz przez "zrobiłem voida"?

0
kq napisał(a):

Co do pytania: google nie boli. https://stackoverflow.com/questions/1319461/how-do-i-turn-off-unicode-in-a-vc-project

Co rozumiesz przez "zrobiłem voida"?

nie chodzi o to,tylko czemu mi on tylko wczytuje z int main()?
powalone to jakies

0

Nie rozumiem o co ci chodzi. Jeśli napisałeś funkcję, to aby wykonać jej kod, musisz ją wywołać.

0
kq napisał(a):

Nie rozumiem o co ci chodzi. Jeśli napisałeś funkcję, to aby wykonać jej kod, musisz ją wywołać.

dodałem do int main
loading();
ale bez zmian

0

Wywołanie nie pokrywa się z definicją. Na pewno to się kompiluje?

0
kq napisał(a):

Wywołanie nie pokrywa się z definicją. Na pewno to się kompiluje?

tak cały kod

include "stdafx.h"

#define _WINSOCK_DEPRECATED_NO_WARNINGS
#pragma comment(lib,"ws2_32.lib")

#include <WinSock2.h>
#include <iostream>

#include "definitions.h"



void loading() {
#ifdef _WIN32
	SetConsoleTitle(STATUS_SERVER_NAME);
#endif

	std::cout << STATUS_SERVER_NAME << " - Version " << std::endl;
}

int main(){

	loading();

	//WinSock Startup
	WSAData wsaData;
	WORD DllVersion = MAKEWORD(2, 1);
	if (WSAStartup(DllVersion, &wsaData) != 0) //If WSAStartup returns anything other than 0, then that means an error has occured in the WinSock Startup.
	{
		MessageBoxA(NULL, "WinSock startup failed", "Error", MB_OK | MB_ICONERROR);
		return 0;
	}

	SOCKADDR_IN addr; //Address that we will bind our listening socket to
	int addrlen = sizeof(addr); //length of the address (required for accept call)
	addr.sin_addr.s_addr = inet_addr("127.0.0.1"); //Broadcast locally
	addr.sin_port = htons(7172); //Port
	addr.sin_family = AF_INET; //IPv4 Socket

	SOCKET sListen = socket(AF_INET, SOCK_STREAM, NULL); //Create socket to listen for new connections
	bind(sListen, (SOCKADDR*)&addr, sizeof(addr)); //Bind the address to the socket
	listen(sListen, SOMAXCONN); //Places sListen socket in a state in which it is listening for an incoming connection. Note:SOMAXCONN = Socket Oustanding Max Connections

	SOCKET newConnection; //Socket to hold the client's connection
	newConnection = accept(sListen, (SOCKADDR*)&addr, &addrlen); //Accept a new connection
	if (newConnection == 0) //If accepting the client connection failed
	{
		std::cout << "Failed to accept the client's connection." << std::endl;
	}
	else //If client connection properly accepted
	{
		std::cout << "Client Connected!" << std::endl;
		char MOTD[256] = "Welcome! This is the Message of the Day."; //Create buffer with message of the day
		send(newConnection, MOTD, sizeof(MOTD), NULL); //Send MOTD buffer
	}
	
	system("pause");
	return 0;
}


0

poradziłem sobie, ale jest jeszcze jedno pytanie jak wywołać drugi np int z inny.cpp?

1 użytkowników online, w tym zalogowanych: 0, gości: 1