You last visited: Today at 23:30
Advertisement
Eure größten Programmier Fails!
Discussion on Eure größten Programmier Fails! within the General Coding forum part of the Coders Den category.
09/29/2009, 15:12
#16
elite*gold: 4
Join Date: Aug 2008
Posts: 6,783
Received Thanks: 4,992
Eure größten Programmier Fails!
|
v
ROCPBF, ROIGBF ;O
10/07/2009, 19:59
#17
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
Ich hab vor ner Woche ne dll injeziert und wollte die ingame variablen per writeprocessmemory umschreiben
Und nein, es war nicht meine 1. Mal..
10/07/2009, 20:15
#18
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
Quote:
Originally Posted by
u-coRe
Ich hab vor ner Woche ne dll injeziert und wollte die ingame variablen per writeprocessmemory umschreiben
Und nein, es war nicht meine 1. Mal..
wie willse die dennn sonst umschreiben XD
10/07/2009, 20:36
#19
elite*gold: 0
Join Date: Mar 2008
Posts: 747
Received Thanks: 245
Quote:
Originally Posted by
Gianotti
wie willse die dennn sonst umschreiben XD
Mit der memcpy funktion kann man auch speicherstellen im eigenen speicherbereich umschreiben. Und nach einer injection befindet sich die DLL ja im selben speicherbereich des programmes in dem injectiert wurde.
10/07/2009, 20:39
#20
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
Quote:
Originally Posted by
Akorn
Mit der memcpy funktion kann man auch speicherstellen im eigenen speicherbereich umschreiben. Und nach einer injection befindet sich die DLL ja im selben speicherbereich des programmes in dem injectiert wurde.
ja das stimmt danke für die aufklärung damit gehts einfacher
10/07/2009, 20:45
#21
elite*gold: 360
Join Date: Jan 2008
Posts: 1,127
Received Thanks: 522
Would be so much better if you posted your Q in ENG!
10/07/2009, 21:27
#22
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
Quote:
Originally Posted by
Gianotti
ja das stimmt danke für die aufklärung damit gehts einfacher
So zum Beispiel..
Code:
#include "stdafx.h"
#include <limits>
#include <windows.h>
DWORD WINAPI ChangePts()
{
//Memories
while(true)
{
if(GetAsyncKeyState(0x22))
{
while(GetAsyncKeyState(0x22))
{
Sleep(100);
}
*(unsigned long*) (0x08237810) = (*(unsigned long*) (0x08237810)+1000);
}
}
return 1;
}
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved )
{
if (ul_reason_for_call == DLL_PROCESS_ATTACH) {
CreateThread(
NULL,
NULL,
(LPTHREAD_START_ROUTINE)ChangePts,
NULL,
NULL,
NULL
);
}
else{
return TRUE;
};
return TRUE;
}
10/07/2009, 21:54
#23
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
Quote:
Originally Posted by
u-coRe
So zum Beispiel..
Code:
#include "stdafx.h"
#include <limits>
#include <windows.h>
using namespace std;
HWND hWnd;
HANDLE hProcess;
DWORD numBytesRead;
DWORD ProcessId;
DWORD WINAPI ChangePts()
{
//Memories
while(true)
{
if(GetAsyncKeyState(0x22))
{
while(GetAsyncKeyState(0x22))
{
Sleep(100);
}
*(unsigned long*) (0x08237810) = (*(unsigned long*) (0x08237810)+1000);
}
}
return 1;
}
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved )
{
if (ul_reason_for_call == DLL_PROCESS_ATTACH) {
CreateThread(
NULL,
NULL,
(LPTHREAD_START_ROUTINE)ChangePts,
NULL,
NULL,
NULL
);
}
else{
return TRUE;
};
return TRUE;
}
that works ? cool
10/08/2009, 21:14
#24
elite*gold: 20
Join Date: Sep 2006
Posts: 1,100
Received Thanks: 184
Man sollte für CreateThread eine richtige Thread Routine anlegen, das kann sonst zu unerwarteten Problemen führen.
Code:
#include "stdafx.h"
#include <limits>
#include <windows.h>
DWORD __stdcall ChangePts(LPVOID lpThreadParameter)
{
//Memories
while(true)
{
if(GetAsyncKeyState(0x22))
{
while(GetAsyncKeyState(0x22))
{
Sleep(100);
}
*(unsigned long*) (0x08237810) = (*(unsigned long*) (0x08237810)+1000);
}
}
return 1;
}
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved )
{
if (ul_reason_for_call == DLL_PROCESS_ATTACH) {
CreateThread(
NULL,
NULL,
ChangePts,
NULL,
NULL,
NULL
);
}
else{
return TRUE;
};
return TRUE;
}
10/08/2009, 21:39
#25
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
Quote:
Originally Posted by
Bot_interesierter
Man sollte für CreateThread eine richtige Thread Routine anlegen, das kann sonst zu unerwarteten Problemen führen.
Code:
#include "stdafx.h"
#include <limits>
#include <windows.h>
DWORD __stdcall ChangePts(LPVOID lpThreadParameter)
{
//Memories
while(true)
{
if(GetAsyncKeyState(0x22))
{
while(GetAsyncKeyState(0x22))
{
Sleep(100);
}
*(unsigned long*) (0x08237810) = (*(unsigned long*) (0x08237810)+1000);
}
}
return 1;
}
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved )
{
if (ul_reason_for_call == DLL_PROCESS_ATTACH) {
CreateThread(
NULL,
NULL,
ChangePts,
NULL,
NULL,
NULL
);
}
else{
return TRUE;
};
return TRUE;
}
unerwartete probleme ? welche z.b. . bei mir sind noch nie welche aufgetaucht
10/09/2009, 15:20
#26
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
Ich hatte damit bisher auch noch keine Probleme
10/09/2009, 18:39
#27
elite*gold: 20
Join Date: Sep 2006
Posts: 1,100
Received Thanks: 184
Man kann Probleme mit dem Stack bekommen, weil CreateThread einen lpThreadParameter Pointer übergibt und wenn die Funktion keinen lpThreadParameter pointer übernimmt ist das verhalten undefiniert.
Solange man keine ThreadParameter übergibt sollte es aber keine Probleme machen, nur gehört es zu einem guten Programmierstiel dazu FunktionPointer nicht unnötig zu casten, also lieber gleich den Funktions Prototypen richtig programmieren als irgendwann später mal ärger damit zu haben.
10/09/2009, 19:47
#28
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
Quote:
Originally Posted by
Bot_interesierter
Man kann Probleme mit dem Stack bekommen, weil CreateThread einen lpThreadParameter Pointer übergibt und wenn die Funktion keinen lpThreadParameter pointer übernimmt ist das verhalten undefiniert.
Solange man keine ThreadParameter übergibt sollte es aber keine Probleme machen, nur gehört es zu einem guten Programmierstiel dazu FunktionPointer nicht unnötig zu casten, also lieber gleich den Funktions Prototypen richtig programmieren als irgendwann später mal ärger damit zu haben.
solange es funktioniert ist mir das egal programmiere ja nicht für geld
10/15/2009, 11:16
#29
elite*gold: 4
Join Date: Aug 2008
Posts: 6,783
Received Thanks: 4,992
Quote:
Originally Posted by
Gianotti
solange es funktioniert ist mir das egal programmiere ja nicht für geld
Wieso nen Porsche fahren wenn man auch n Trabbi haben kann ;O
10/15/2009, 19:58
#30
elite*gold: 1
Join Date: Jul 2005
Posts: 553
Received Thanks: 454
Ich bin mit meinem Trabant 601LX Deluxe ein dicker Bonner Bonze :>
All times are GMT +2. The time now is 23:31 .