What's new

Inne Prosz? o pomoc..

Status
Not open for further replies.

Milkeway

Active User
Joined
Mar 20, 2011
Messages
124
Reaction score
5
Age
27
Cze..
Posiadam silnik helpera. Chcia?bym zrobi? ots ale mam zmienne ip czyli no-ip bo pod hamachi nie chc?.
Chcia?bym aby?cie pomogli mi to zrobi? po przez konfiguracj? a? po acc maker.
 

zakius

Senior User
Joined
May 25, 2008
Messages
869
Reaction score
52
Odp: Prosz? o pomoc..

Bo ma?o poradnik?w jest w sieci. I na tym forum pewnie te?. W config dajesz domen?, jak? nasz od swojego dyn a reszta zgodnie z poradnikami. Pisz dalej jak trafisz na jakie? problemy w trakcie roboty a nie zanim w og?le zaczniesz
 

DanJ93

ElfBot Helper
Joined
Jan 18, 2009
Messages
2,631
Reaction score
200
Odp: Prosz? o pomoc..

Bo ma?o poradnik?w jest w sieci. I na tym forum pewnie te?. W config dajesz domen?, jak? nasz od swojego dyn a reszta zgodnie z poradnikami. Pisz dalej jak trafisz na jakie? problemy w trakcie roboty a nie zanim w og?le zaczniesz
W configu podawa? najlepiej swoje numeryczne ip.
Czyli w jego przypadku za ka?dym razem nowe w config wklepywa?.

#TOPIC
Wszystko robisz normalnie,
tylko dodatkowo rejestrujesz si? na np. dyn.pl, ?ci?gasz od nich programik, instalujesz, odpalasz, logujesz si? i w??czasz sw?j adres.dyn.pl i gotowe! :)
 

zakius

Senior User
Joined
May 25, 2008
Messages
869
Reaction score
52
Odp: Prosz? o pomoc..

jak masz domen? no-ip to ?atwiej wklepa? domen?, ni? za ka?dym razem zmienia?
albo zrobi? automatyczne wczytywanie, gdzie? mam kod na to nawet zaktualizowany do 0.3.6, mo?e znajd?

w otserv.cpp w funkcji void otserv(StringVec, ServiceManager* services) pod std::string ip = g_config.getString(ConfigManager::IP); wklei? kod
Code:
if(asLowerCaseString(ip) == "auto")
	{
		WSADATA wsaData; 
		if(WSAStartup(MAKEWORD(2, 0), &wsaData) == 0)
		{
			SOCKET s = socket(AF_INET, SOCK_STREAM, 0);
			HOSTENT *host;
			host = gethostbyname("www.whatismyip.com");
			SOCKADDR_IN sin;
			memset(&sin, 0, sizeof sin); 
			sin.sin_family = AF_INET;
			sin.sin_addr.s_addr = ((struct in_addr*)(host->h_addr))->s_addr;
			sin.sin_port = htons(80); 
			if(connect(s, (struct sockaddr*)&sin, sizeof(sin)) != SOCKET_ERROR)
			{
				std::string request = "GET http://automation.whatismyip.com/n09230945.asp HTTP/1.1\r\nHost: www.whatismyip.com\r\n\r\n";
				if(send(s, request.c_str(), request.length(), 0) != request.length())
					std::cout << "Error sending request: " << WSAGetLastError() << std::endl; 
				char buffer[2048];
				std::string response;
				recv(s, (char*)&buffer, 2048, 0);
				response = std::string(buffer);
				int start = int(response.find("\r\n\r\n"));
				int iplength = response.length()-start; 
				ip = "";
				for(int i = start; i < response.length(); i++)
				{
					if((response.at(i) >= '0' && response.at(i) <= '9') || response.at(i) == '.') 
						ip += response.at(i);
				} 
				closesocket(s);
			}
		}
		else
			ip="127.0.0.1"; 
	}
i wtedy w configu po prostu wklepa? auto, u mnie dzia?a

teraz dzia?a, przenie?li skrypt pod troche inny adres wi?c kod wymaga? aktualizacji
 
Last edited:
Status
Not open for further replies.
Top