Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 19:08

  • Please register to post and access all features, it's quick, easy and FREE!


HWID Check in c++

Reply
 
Old   #1
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,175
Received Thanks: 671
HWID Check in c++

Hey,
könnte mir wer erklären wie ein HWID check funkt:

Folgender code funkt auch (Feher er sollte ja dan net funken)
Code:
if (_reason == DLL_PROCESS_ATTACH)
	{
		
		HW_PROFILE_INFO hwProfileInfo;


		if(GetCurrentHwProfile(&hwProfileInfo) != NULL){
			char *cHWID = "{846ee340-7039-11de-9d20-806e6f6e6963}";
			char *cHWID2 = hwProfileInfo.szHwProfileGuid;
			MessageBox(0,cHWID2,cHWID,0);


			printf("Hardware GUID: %s\n", hwProfileInfo.szHwProfileGuid);
			printf("Hardware Profile: %s\n", hwProfileInfo.szHwProfileName);

			//if(strcmp(hwProfileInfo.szHwProfileGuid, cHWID)){
			if(mystrcmp(cHWID2, cHWID)){
				MessageBoxA(0,"HWID Checked","",0);
				printf("Hardware ID check passed.\n");
			}else{
				HGLOBAL hText;
				char *pText;
				hText = GlobalAlloc(GMEM_DDESHARE|GMEM_MOVEABLE, 100);
				pText = (char*)GlobalLock(hText);
				strcpy(pText, hwProfileInfo.szHwProfileGuid);
				GlobalUnlock(hText);
 
				OpenClipboard(NULL);
				EmptyClipboard();
				SetClipboardData(CF_TEXT, hText);
				CloseClipboard();
				MessageBoxA(0, TEXT("HWID detection failed !!!\n HWID copyied to Clipboard! \n Bye"),"Information",0);

			}
		}else{
			return 0;
		}
			
	}



Terrat is offline  
Old 09/14/2014, 11:15   #2
 
elite*gold: 0
Join Date: Nov 2013
Posts: 23
Received Thanks: 1
Hier fehlt leider die komplette Implementierung zur Klasse "HW_PROFILE_INFO". Also daher nicht möglich zu erklären.


info.student is offline  
Old 09/14/2014, 11:26   #3
all talk no action


 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,289
^das ist ein Struct, dessen Mitglieder du dir im MSDN anschauen kannst.

Wie ist mystrcmp implementiert und warum nimmst du nicht std::string:perator== dafür?
Bei einem HWID Check sendet man die HWID an einen Server, der überprüft, ob diese bereits eingetragen ist und sendet sein okay, wenn dem so ist. Mit einer statischen HWID im Programm erreichst du nichts.
snow is offline  
Old 09/14/2014, 18:13   #4
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,175
Received Thanks: 671
Quote:
Originally Posted by snow View Post
^das ist ein Struct, dessen Mitglieder du dir im MSDN anschauen kannst.

Wie ist mystrcmp implementiert und warum nimmst du nicht std::string:perator== dafür?
Bei einem HWID Check sendet man die HWID an einen Server, der überprüft, ob diese bereits eingetragen ist und sendet sein okay, wenn dem so ist. Mit einer statischen HWID im Programm erreichst du nichts.
Es soll ja "nur einsitig" sein da ich nur will das wen ich manchen kollege diese dll schicke (die geben mir vorher ihre hwid und ich compile das mit ihrer) sie diese net weiter schicken können


Terrat is offline  
Old 09/15/2014, 01:22   #5

 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Dec 2012
Posts: 12,973
Received Thanks: 8,063
Quote:
Originally Posted by Dreamsläps View Post
Es soll ja "nur einsitig" sein da ich nur will das wen ich manchen kollege diese dll schicke (die geben mir vorher ihre hwid und ich compile das mit ihrer) sie diese net weiter schicken können
Wäre es nicht einfacher, einfach einen Http Request an einen Free Webspace Host zu schicken, auf der eine Datei liegt, die eine Liste überprüft ob die übergebene HWID, eingetragen ist?

Get HWID => HttpRequest @ => PHP Datei überprüft Text Datei, ob die HWID dort eingetragen ist und returned gegebenfalls true => Du musst nicht dauernd neu kompilieren und es ist immer noch privat.
Requi is offline  
Old 09/15/2014, 06:15   #6
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,175
Received Thanks: 671
Quote:
Originally Posted by Requi View Post
Wäre es nicht einfacher, einfach einen Http Request an einen Free Webspace Host zu schicken, auf der eine Datei liegt, die eine Liste überprüft ob die übergebene HWID, eingetragen ist?

Get HWID => HttpRequest @ => PHP Datei überprüft Text Datei, ob die HWID dort eingetragen ist und returned gegebenfalls true => Du musst nicht dauernd neu kompilieren und es ist immer noch privat.
ja aber ea geht mir darum das ich erstmal den code oben zum laufen kriegen will da ja sogar da der check fehl schlägt
Terrat is offline  
Old 09/15/2014, 06:47   #7

 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Dec 2012
Posts: 12,973
Received Thanks: 8,063
Das wird wohl höchstwahrscheinlich an der string compare methode liegen. Vielleicht solltest du zeigen, was die Funktion genau macht. Komm jetzt aber bitte nicht mit, sie vergleicht 2 Strings, sondern zeig Code.
Requi is offline  
Old 09/15/2014, 08:24   #8
 
elite*gold: 198
Join Date: Mar 2011
Posts: 835
Received Thanks: 263
Quote:
Originally Posted by Dreamsläps View Post
Es soll ja "nur einsitig" sein da ich nur will das wen ich manchen kollege diese dll schicke (die geben mir vorher ihre hwid und ich compile das mit ihrer) sie diese net weiter schicken können
2min arbeit das zu umgehen xD Es lohnt sich nicht wirklich einen Schutz einzubauen da es immer ein vielfaches weniger an Zeit brauchen wird ihn zu umgehen.
ƬheGame is offline  
Old 09/15/2014, 14:03   #9
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,175
Received Thanks: 671
Quote:
Originally Posted by ƬheGame View Post
2min arbeit das zu umgehen xD Es lohnt sich nicht wirklich einen Schutz einzubauen da es immer ein vielfaches weniger an Zeit brauchen wirt ihn zu umgehen.
Xd aber ne http anfrage ? Mit whireshark packet abfangen in host datei ip unleiten wo der billig au3 servercrack ist.
Trotzdem möchte ich jetzt bitte wissen was am code falsch ist .
Terrat is offline  
Old 09/15/2014, 14:17   #10
 
elite*gold: 198
Join Date: Mar 2011
Posts: 835
Received Thanks: 263
Quote:
Originally Posted by Dreamsläps View Post
Xd aber ne http anfrage ? Mit whireshark packet abfangen in host datei ip unleiten wo der billig au3 servercrack ist.
Trotzdem möchte ich jetzt bitte wissen was am code falsch ist .
Habe niemals zu ner http anfragen geraten... Das ist genauso sinnlos.
Ohne den Vollständigen code (eine Funktion fehlt so wie ich das sehe) und den compiler error falls es einen gibt kann ich dir nicht weiterhelfen. Wo bleibt es beim debuggen hängen? Kannst du ja step by step durchgehen.
ƬheGame is offline  
Old 09/15/2014, 15:49   #11



 
elite*gold: 3120
Join Date: Apr 2010
Posts: 13,600
Received Thanks: 14,769
Immer schön die lesen

Quote:
Returns an integral value indicating the relationship between the strings:
<0 the first character that does not match has a lower value in ptr1 than in ptr2
0 the contents of both strings are equal
>0 the first character that does not match has a greater value in ptr1 than in ptr2
Code:
			if(strcmp(cHWID2, cHWID) == 0){
				MessageBoxA(0,"HWID Checked","",0);
				printf("Hardware ID check passed.\n");
			}else{
				HGLOBAL hText;
				char *pText;
				hText = GlobalAlloc(GMEM_DDESHARE|GMEM_MOVEABLE, 100);
				pText = (char*)GlobalLock(hText);
				strcpy(pText, hwProfileInfo.szHwProfileGuid);
				GlobalUnlock(hText);
 
				OpenClipboard(NULL);
				EmptyClipboard();
				SetClipboardData(CF_TEXT, hText);
				CloseClipboard();
				MessageBoxA(0, TEXT("HWID detection failed !!!\n HWID copyied to Clipboard! \n Bye"),"Information",0);

			}
Omdi is offline  
Thanks
1 User
Old 09/15/2014, 17:21   #12
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,175
Received Thanks: 671
Quote:
Originally Posted by Omdihar View Post
Immer schön die lesen



Code:
			if(strcmp(cHWID2, cHWID) == 0){
				MessageBoxA(0,"HWID Checked","",0);
				printf("Hardware ID check passed.\n");
			}else{
				HGLOBAL hText;
				char *pText;
				hText = GlobalAlloc(GMEM_DDESHARE|GMEM_MOVEABLE, 100);
				pText = (char*)GlobalLock(hText);
				strcpy(pText, hwProfileInfo.szHwProfileGuid);
				GlobalUnlock(hText);
 
				OpenClipboard(NULL);
				EmptyClipboard();
				SetClipboardData(CF_TEXT, hText);
				CloseClipboard();
				MessageBoxA(0, TEXT("HWID detection failed !!!\n HWID copyied to Clipboard! \n Bye"),"Information",0);

			}
Made my day *-*
Terrat is offline  
Old 07/06/2018, 10:10   #13
 
elite*gold: 0
Join Date: Feb 2014
Posts: 283
Received Thanks: 37
Auch wenn dieses Thema relativ outdated ist, möchte ich nur erwähnen, dass szHWProfileGuid bei win 7 / 8 immer das gleiche sein wird.


1234hans is offline  
Reply



« Hilfe bei der Klausur für C-Programmierung | RTMP Client Libary »

Similar Threads
[Request]C# Hwid / check if thanks system of Epvp!
07/02/2014 - .NET Languages - 6 Replies
Hey, I wonder if someone had released such thing? It's released for Autoit.. but is there for C#? Thanks! :handsdown:
[AutoIT] Offline HWID Check
01/10/2014 - AutoIt - 3 Replies
Ich hab mal bisschen in Youtube nachgeguckt und hab dieses Video gefunden. HWID Protection offline | ShadowzKnowledge - YouTube Es geht darum wie man die Projekte schützt und ich finde, dass dies eine sehr gute Methode ist seine Projekte zu schützen, wenn man z.B eine Premium Version macht und nur die Leute es bekommen sollen, die es auch bezahlt haben. Jetzt meine Frage; also ich versteh nicht so ganz wie das abläuft, wäre toll wenn einer von euch das vielleicht noch erklären konnte....
[Mini Tutorial] EPVP - HWID [Thanks + Posts Check]
07/31/2013 - AutoIt - 15 Replies
Hey Leute heute will ich mal ein kleines Tutorial posten für die Leute die nicht verstanden wie man eine Posts + Thanks Abfrage macht..so fangen wir an #include ;Für die Funktionen (Sind in der Au3 Datei Gespeichert).. #requireadmin;Autostart als Admin $HWID = _GetHWID ();Sucht EPVP HWID _GetHWIDData();Sucht Informationen über HWID ; $Array = userid ; $Array = username ; $Array = joindate ; $Array = posts
[HILFE] Programm mit HWID-Check vor Leeching schützen [VB 10 EX]
08/07/2012 - .NET Languages - 22 Replies
Moin liebe ePvP Community! Programmiesprache: Visual Basic 2010 - Express Ich weiß, ich weiß, gibts hier genug Tutorials im internet und auch in ePvP. Allerdings funktioniert bei mir nichts oder ich bin einfach zu dumm dafür. Also, wie kann ich ein Programm mit einem HWID-Check schützen, damit es halt nur der Käufer nutzen kann. Am besten auch sources, bin nicht so gut darin.



All times are GMT +1. The time now is 19:08.


Powered by vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2018 elitepvpers All Rights Reserved.