[CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Ciekawe artykuły dotyczące C#

Moderator: xxSlayeRxx

[CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Sponsor

Sponsor
 

[CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » N maja 24, 2009 6:38 pm

Witam serdecznie!
Pokażę jak zrobić Trainer'a :)


Potrzebne programy:
1. Cheat Engine
Link: http://cheatengine.org/downloads/CheatEngine55.exe

2. Visual C# 2008 Express Edition
Link: http://www.microsoft.com/express/vcsharp/#webInstall

3. Jakaś gra :)
Tutaj użyłem: F.E.A.R. v1.08
-----------------------------------

Jak już macie to zaczynamy!


1. Uruchamiamy naszą grę.
W tym przypadku F.E.A.R.'a.
Włączyłem przykładowego Save'a.
I jestem w grze.

Foto 1:
Obrazek


2. Naciskamy Alt+Tab by zminimalizować grę.
3. Uruchamiamy Cheat Engine.
4. Wybieramy proces gry.

Foto 2:
Obrazek


5. Wracamy do gry i patrzymy na ogólną ilość amunicji.
Czyli, jeżeli mamy 45/33 to ogólnie mamy 78.

6. Wracamy do Cheat Engine (Alt+Tab).
I w polu Value: wpisujemy 78.
Scan type musi być ustawiony na Exact Value.
7. Klikamy First Scan.
Jak widać na Fotce niżej jest za dużo adresów, by zrobić coś konkretnego.

Fota 3:
Obrazek


8. Więc wracamy do gry i oddajemy kilka strzałów.

Fota 4:
Obrazek


9. Wracamy do Cheat Engine'a i wpisujemy do pola Value: wartość po oddaniu strzałów.
W tym wypadku 75.

Fota 5:
Obrazek


Jak widać na obrazku adresów jest ciągle za dużo, więc powtarzamy kroki 8 i 9,
aż zostanie maks. 4 adresy.
Ok mamy 4 adresy. Wszystkie odpowiadają za amunicję, więc wiadomo, że użyję wszystkich :)

10. Teraz klikamy na jeden adres Prawym Przyciskiem Myszy i klikamy Select all items.
11. Klikamy czerwoną strzałkę jak na zdjęciu poniżej, by dodać adresy do tabeli.

Fota 6:
Obrazek


Teraz Ważne!
12. Klikamy na pierwszy adres w kolumnie "Address" Prawym Przyciskiem Myszy.
13. Wybieramy "Find out what writes to this address".
Jeżeli wyskoczy okno Confirm klikamy oczywiście Yes.

Fota 7:
Obrazek


Otworzy nam się nowe okno.
14. Wracamy do gry (nie zamykając tego nowego okna) i ponownie oddajemy kilka strzałów.

Fota 8:
Obrazek


Widzimy, że w oknie pokazał się opcode. (adres, który zmienia wartość innego adresu)

Fota 9:
Obrazek


15. Klikamy RAZ na tą linijkę i następnie klikamy More information.
Widzimy nowe okno oraz w nim czerwoną linię.

Fota 10:
Obrazek


WAŻNE!
16. Bierzemy z niej ostatni numer (jest to tzw. Offset) w tym przypadku jest to 4.
Jeżeli np. wygląda to tak: mov [eax+20] to offset jest równy 20. Itd.
17. Oraz spisujemy też adres pod zdaniem:
The value of the pointer needed to find this address is probably
W tym przypadku jest to: 0409FC10.

18. Zamykamy wszystkie okna prócz głównego.
19. Zaznaczamy CheckBox Hex oraz klikamy New Scan, oraz wpisujemy do pola Value: adres spisany z okna Extra info. (czyli 0409FC10)
20. I klikamy First Scan.

Fota 11:
Obrazek


Po wyszukaniu widzimy jeden zielony adres (tzw. adres statyczny).
21. Klikamy na niego raz i klikamy czerwoną strzałkę, by dodac go do tabeli.
Adres zostanie dodany do tabeli.
Nie ruszamy wcześniejszych adresów!

Teraz ważne!
Klikamy na przedchwilą dodany adres w tabeli (kolumna Address) dwa razy.
Otworzy się okno Change address.
Klikamy na CheckBox Pointer.
I uzupełniamy jak na zdjęciu poniżej.

Fotka 12:
Obrazek


I klikamy Ok.

W głównym oknie widzimy, że adres zmienił się tzn. dodało się P-> czyli Pointer.

Fota 13:
Obrazek


Warto teraz zapisać naszą pracę, ponieważ oszczędzimy sobie duuuużo roboty.
Punkty 6-12 robimy ze wszystkimi adresami (oprócz oczywiście adresów z P->) na liście.
I tak o to mamy nieskończoną amunicję :)


---------------------------------------
I tak skończyliśmy najgorsze działania 8)
---------------------------------------


Teraz musimy spisać adres z Fotki 12 pól Address of pointer oraz Offset na jakąś kartkę.


Napiszemy aplikację, która pozwoli nam "wstrzyknąć" zmieniony kod do naszej gry.

1. Ściągamy Visual C# 2008 Express Edition lub każdy inny. (Link na samej górze posta)
Instalujemy i uruchamiamy.
Zakładam, że potraficie się obsługiwać Visual'em.

2. Tworzymy nowy projekt Windows Forms Application o nazwie jakiej tam chcecie.
Ja użyję nazwy Trainer.
3. Pobieramy z adresu http://chomikuj.pl/MazQuick/ProcessMemoryReader.cs plik i dodajemy go do projektu.
Solution Explorer -> Prawy Przycisk Myszy na nazwę projektu -> Add -> Existing Item...
Jest to plik klas z funkcjami API potrzebnymi do takich zabaw z pamięcią.

4. (Opcjonalne) Dla Formy Ustawiamy:

StartPosition na CenterScreen.
MaximizeBox na false.
FormBorderStyle na FixedDialog.
Text na jaki chcecie ja wpisałem FEAR Trainer.

5. Dodajemy na Formę jednego Button'a.

6. (Opcjonalne) Dla Buttona Ustawiamy:

Text na Dodaj Ammo.
(Name) na btnAmmo.

7. Klikamy dwa razy na buttona na formie.
Otworzy się plik z kodem źródłowym.

Do akcji button1_Click wpisujemy:


Kod: Zaznacz cały
System.Diagnostics.Process[] myprocess = System.Diagnostics.Process.GetProcessesByName("FEARMP");
            ProcessMemoryReaderLib.ProcessMemoryReader preader = new ProcessMemoryReaderLib.ProcessMemoryReader();
            preader.ReadProcess = myprocess[0];
            preader.OpenProcess();
            int byteswritten;
            int bytesread;
            int value;
            int pointerbase;
            byte[] memory;
            memory = preader.ReadProcessMemory((IntPtr)0x101AAB20, 4, out bytesread);
            pointerbase = BitConverter.ToInt32(memory, 0);
            pointerbase += 0x4;
            value = 450;
            memory = BitConverter.GetBytes(value);
            preader.WriteProcessMemory((IntPtr)pointerbase, memory, out byteswritten);



----------------
Objaśnienie kodu
----------------

Pierwsza linijka:
Kod: Zaznacz cały
System.Diagnostics.Process[] myprocess = System.Diagnostics.Process.GetProcessesByName("FEARMP");

Odpowiada za wpisanie do zmiennej myprocess nazwe procesu gry. (w tym wypadku FEARMP)
Ważne jest by nie dopisywać żadnego .exe na końcu.

Kolejna linijka:
Kod: Zaznacz cały
ProcessMemoryReaderLib.ProcessMemoryReader preader = new ProcessMemoryReaderLib.ProcessMemoryReader();

Jest to deklaracja czytnika pamięci procesu z pliku klas ProcessMemoryReader.cs.
Dzięki tej deklaracji możemy "grzebać" w pamięci gry.
JEST TO BARDZO WAŻNE, BO BEZ TEGO NIE MOGLIBYŚMY NIC ZROBIĆ.

Trzecia linijka:
Kod: Zaznacz cały
preader.ReadProcess = myprocess[0];

Przypisanie procesu do zmiennej preader.
Aby program wiedział w czym ma "grzebać".

Czwarta linijka:
Kod: Zaznacz cały
preader.OpenProcess();

Otwiera proces. (tj. czyta)

Pięć kolejne:
Kod: Zaznacz cały
int byteswritten;
int bytesread;
int value;
int pointerbase;
byte[] memory;

Deklaracje 4 zmiennych liczbowych i jednej tablicy.

Dziesiąta linijka: (WAŻNA)
Kod: Zaznacz cały
memory = preader.ReadProcessMemory((IntPtr)0x101AAB20, 4, out bytesread);

Tutaj czytamy adres i zapisujemy wartość do zmiennej bytesread.
WAŻNE! Ważne jest by przed każdym adresem dodać 0x. (przyznam, że nie wiem po co, ale wiem, że bez tego by to nie działało :))

Kolejne dwie: (WAŻNE)
Kod: Zaznacz cały
pointerbase = BitConverter.ToInt32(memory, 0);
pointerbase += 0x4;

Tutaj podajemy wartość Pointer'a. (w naszym przypadku jest to 4)
WAŻNE! Podobnie jak wcześniej należy dodać 0x.

Trzynasta linijka: (WAŻNA)
Kod: Zaznacz cały
value = 450;

Przypisujemy wartość do adresu.
W tym wypadku maksymalna ilość amunicji dla broni wynosi 450.

Ostatnie dwie: (WAŻNE)
Kod: Zaznacz cały
memory = BitConverter.GetBytes(value);
preader.WriteProcessMemory((IntPtr)pointerbase, memory, out byteswritten);

Pierwsza dodaje do tablicy wartość value zmienioną na bajty.
Druga natomiast zmienia adres w procesie gry i zapisuje ilość bajtów do zmiennej byteswritten.

Tak ja to rozumiem i tak Wam to przekazałem.
Jeżeli coś zrobiłem źle, natychmiast informować :)

----------------
Koniec Objaśnień
----------------

Zapisujemy projekt i budujemy aplikację.
Uruchamiamy grę i klikamy w buttona.
Hura! To działa :D

Dziękuję za poświęconą uwagę, mam nadzieję, że pomogłem co nieco :)
Pozdrawiam


P.S Później napiszę jak w samym Cheat Engine'ie uruchamiać i wyłączać Cheat'y.
P.S 2 Niektóre zdjęcia nie mieszczą się w poście, więc kod dodałem też w tagach.
P.S 3 Wiem, że za często używałem słowa adres, ale tak szyciej się zrozumie ideę :)
Ostatnio edytowano Cz maja 06, 2010 10:17 am przez `DrumZy, łącznie edytowano 8 razy
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainera + Pointery

Postprzez mykhaylo » N maja 24, 2009 7:40 pm

Temat bardzo ciekawy. Przeczytałem z wielkim zainteresowaniem. Jakość wytłumaczenia jest w miarę dobra. Świetnie że zostało dodane tyle screen-ów.
Objaśnienie kodu później, bo teraz mi się nie chcę :P
- trochę nieodpowiedzialne, ale jak na pierwszy artykuł to bardzo mi się podobał. Czekam na inne 8)
Avatar użytkownika
mykhaylo
Member
 
Posty: 1475
Dołączył(a): Pn cze 09, 2008 5:53 pm
Lokalizacja: Warszawa

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » N maja 24, 2009 9:32 pm

Dodałem objaśnienie kodu, poprawiłem kilka błędów i mam nadzieję, że pomogłem 8)
Pozdrawiam
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez Lukazuki » Pt lip 03, 2009 8:10 am

3. Pobieramy z adresu http://www12.zippyshare.com/v/16441661/file.html plik i dodajemy go do projektu.


możesz wysłać ten plik na inny server bo nie idzie się go pobrać a chciałbym sobie zrobić fajnego trainera
My D3D VIP Hook v3 for OPERATION7 >>>>>> http://img21.imageshack.us/img21/1927/vipcsm.png D3DStatus: UpDate (08/07/09) I need address

Mój D3D Hack do WarRock http://img9.imageshack.us/img9/2011/hackd3dbylukazuki.png
Avatar użytkownika
Lukazuki
New member
 
Posty: 5
Dołączył(a): Pt lip 03, 2009 8:07 am
Lokalizacja: Okolice Lublina

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » Pt lip 03, 2009 6:18 pm

Zmieniłem link na nowy :)
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez Lukazuki » So lip 04, 2009 2:05 pm

wiesz jest jeden problem tak dla testów spróbowałem w grze Combat Wings EN zrobić 99 rakiet w samolocie normalnie jest ich 30-40

wszystko cacy dobrze zrobiłem
spróbowałem na razie bez robienia trainera w CE zrobić 99 rakiet to wpisałem w value 99 i działa

http://img15.imageshack.us/img15/3379/rygr.png

http://img27.imageshack.us/img27/8577/gtref.png

znalazłem ten pointer
ale nie wiem czy dobrze go spisuje próbowałem różnie 0x08 i 0x8 ale to jest to samo

ale jest problem adresy się zmieniają po każdym wejściu do gry a nawet podczas grania się zmieniają kiedy wczytuje nową mapę albo się wejdzie w trening nie pomaga pointer

zrobiłem tego trainera właczam grę czekam aż się załaduje mapa i włączam trainera i nie działa

zobaczyłem że robienie hacków do gier singleplayer jest trudniejsze niż do multi player ponieważ właśnie w sp adresy się ciągle zmieniają a w mp nie, zmieniają się jak będzie update (aktualizacja) skąd to wiem sam robię hacki do gier w C++,C#,VB są bardziej skomplikowane pod względem kodu źródłowego ale szukanie adresów jest łatwiejsze niż w SP

przykład mego D3D hacka do gry multi zrobiony w C++ http://img4.imageshack.us/img4/2342/pro ... ylukaz.png

ale to może wina gry bo trainera i wyszukiwania adresów i pointera nie

spróbuje na innej grze np test drive Unlimited :)
My D3D VIP Hook v3 for OPERATION7 >>>>>> http://img21.imageshack.us/img21/1927/vipcsm.png D3DStatus: UpDate (08/07/09) I need address

Mój D3D Hack do WarRock http://img9.imageshack.us/img9/2011/hackd3dbylukazuki.png
Avatar użytkownika
Lukazuki
New member
 
Posty: 5
Dołączył(a): Pt lip 03, 2009 8:07 am
Lokalizacja: Okolice Lublina

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » N lip 05, 2009 10:37 am

Jeżeli gra ma częste Update'y to adresy mogą się globalnie zmienić, dlatego co nowa wersja trzeba od nowa robić trainer'a. Tutaj napisałem Trainer z Pointerami 1 stopnia.
Być moża zastosowanie 2 lub 3 stopnia dałoby pozytywny wynik.
Jak na twojej fotce: pointer 08, więc w kodzie będzie to 0x08

Hmmm tak nawiasem, ja programuje również w C++, ciągle piszę swojego hacka do F.E.A.R.'a Combat (Najprostrza gra do hackowania). Niedługo wyślę fotke z tym co zrobiłem dotychczas, bo muszę przeinstalować grę i visual'a.


P.S Powinniśmy się zakolegować ;]
P.S WOW niezły zasób funkcji :P
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez Lukazuki » N lip 05, 2009 3:38 pm

hmmm w F.E.A.R.'a Combat jeszcze nie grałem

jak najprostsza do hackowania to ściągam od razu i spróbuję napisać do niej bazę D3D

P.S Ta gra ma jakieś zabezpieczenia typu Punk Buster lub Hack Shield ? Albo może nie ma wtedy mniej fatygowania z przysłowiową osłoną dla hacka
My D3D VIP Hook v3 for OPERATION7 >>>>>> http://img21.imageshack.us/img21/1927/vipcsm.png D3DStatus: UpDate (08/07/09) I need address

Mój D3D Hack do WarRock http://img9.imageshack.us/img9/2011/hackd3dbylukazuki.png
Avatar użytkownika
Lukazuki
New member
 
Posty: 5
Dołączył(a): Pt lip 03, 2009 8:07 am
Lokalizacja: Okolice Lublina

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » N lip 05, 2009 5:26 pm

Ma PB, ale już nie aktualne.
Tzn stare ;)
W necie są bazy niewykrywalne przez PB, ale jak chcesz pisać swoją własną to proszę :)

Ale niestety jest też SEC Unofficial Server Shield :/
Zabezpiecza przed No Recoil, No Spread, No Reload, Aimbot, WallHack (Chams), God Mode, i innymi ;) Fakt, że nie jest wspierany, ale jeszcze nie udało się go "złamać".

Plik .Arch00 oraz FEAR SDK pobierzesz stąd.

Okrojony SDK (~7MB) z .cpp i .headerami masz tutaj.


P.S Przydałby się jakiś kontakt z Tobą, bo widzę że kminisz akcję, a dzięki Tobie się więcej nauczę :)
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez Lukazuki » N lip 05, 2009 7:53 pm

SEC Unofficial Server Shield z tym się nie spotkałem

zobaczy się jak zainstaluje grę dopiero jutro

Na jakim DIRECTX działa ta dra DirectX8 czy DirectX9 ?
My D3D VIP Hook v3 for OPERATION7 >>>>>> http://img21.imageshack.us/img21/1927/vipcsm.png D3DStatus: UpDate (08/07/09) I need address

Mój D3D Hack do WarRock http://img9.imageshack.us/img9/2011/hackd3dbylukazuki.png
Avatar użytkownika
Lukazuki
New member
 
Posty: 5
Dołączył(a): Pt lip 03, 2009 8:07 am
Lokalizacja: Okolice Lublina

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » Pn lip 06, 2009 8:27 am

DirectX 9 :)
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez Lukazuki » Pn lip 06, 2009 8:32 am

to dobrze bo mój hack do Operation7 jest zrobiony na drirectX9
My D3D VIP Hook v3 for OPERATION7 >>>>>> http://img21.imageshack.us/img21/1927/vipcsm.png D3DStatus: UpDate (08/07/09) I need address

Mój D3D Hack do WarRock http://img9.imageshack.us/img9/2011/hackd3dbylukazuki.png
Avatar użytkownika
Lukazuki
New member
 
Posty: 5
Dołączył(a): Pt lip 03, 2009 8:07 am
Lokalizacja: Okolice Lublina

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » N lut 21, 2010 1:59 pm

Link zaktualizowany :)
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez starjacker0 » Śr maja 05, 2010 4:59 pm

Niestety nie chce mi skompilowac sie ten kod w VS 2008. Wyskakuja same bledy.
Kod:
Kod: Zaznacz cały
#pragma once


namespace Doom3trainer {

   using namespace System;
   using namespace System::ComponentModel;
   using namespace System::Collections;
   using namespace System::Windows::Forms;
   using namespace System::Data;
   using namespace System::Drawing;

   /// <summary>
   /// Summary for Form1
   ///
   /// WARNING: If you change the name of this class, you will need to change the
   ///          'Resource File Name' property for the managed resource compiler tool
   ///          associated with all .resx files this class depends on.  Otherwise,
   ///          the designers will not be able to interact properly with localized
   ///          resources associated with this form.
   /// </summary>
   public ref class Form1 : public System::Windows::Forms::Form
   {
   public:
      Form1(void)
      {
         InitializeComponent();
         //
         //TODO: Add the constructor code here
         //
      }

   protected:
      /// <summary>
      /// Clean up any resources being used.
      /// </summary>
      ~Form1()
      {
         if (components)
         {
            delete components;
         }
      }
   private: System::Windows::Forms::Button^  button1;
   protected:

   private:
      /// <summary>
      /// Required designer variable.
      /// </summary>
      System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
      /// <summary>
      /// Required method for Designer support - do not modify
      /// the contents of this method with the code editor.
      /// </summary>
      void InitializeComponent(void)
      {
         this->button1 = (gcnew System::Windows::Forms::Button());
         this->SuspendLayout();
         //
         // button1
         //
         this->button1->Location = System::Drawing::Point(120, 89);
         this->button1->Name = L"button1";
         this->button1->Size = System::Drawing::Size(75, 23);
         this->button1->TabIndex = 0;
         this->button1->Text = L"button1";
         this->button1->UseVisualStyleBackColor = true;
         this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
         //
         // Form1
         //
         this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
         this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
         this->ClientSize = System::Drawing::Size(284, 262);
         this->Controls->Add(this->button1);
         this->Name = L"Form1";
         this->Text = L"Form1";
         this->ResumeLayout(false);

      }
#pragma endregion
   private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
            System.Diagnostics.Process[] myprocess = System.Diagnostics.Process.GetProcessesByName("doom3");
            ProcessMemoryReaderLib.ProcessMemoryReader preader = new ProcessMemoryReaderLib.ProcessMemoryReader();
            preader.ReadProcess = myprocess[0];
            preader.OpenProcess();
            int byteswritten;
            int bytesread;
            int value;
            int pointerbase;
            byte[] memory;
            memory = preader.ReadProcessMemory((IntPtr)0x15DA1E8C, 4, out bytesread);
            pointerbase = BitConverter.ToInt32(memory, 0);
            pointerbase += 0x000000bc;
            value = 99;
            memory = BitConverter.GetBytes(value);
            preader.WriteProcessMemory((IntPtr)pointerbase, memory, out byteswritten);
          }
   };
}


Błędy:
Kod: Zaznacz cały
1>------ Build started: Project: Doom 3 - trainer, Configuration: Debug Win32 ------
1>Compiling...
1>stdafx.cpp
1>Compiling...
1>AssemblyInfo.cpp
1>Doom 3 - trainer.cpp
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(86) : error C2882: 'System' : illegal use of namespace identifier in expression
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(86) : error C2228: left of '.Diagnostics' must have class/struct/union
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(86) : error C2228: left of '.Process' must have class/struct/union
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(86) : error C2059: syntax error : ']'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(87) : error C2065: 'ProcessMemoryReaderLib' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(87) : error C2228: left of '.ProcessMemoryReader' must have class/struct/union
1>        type is ''unknown-type''
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(87) : error C2146: syntax error : missing ';' before identifier 'preader'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(87) : error C2065: 'preader' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(87) : error C2061: syntax error : identifier 'ProcessMemoryReaderLib'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(88) : error C2065: 'preader' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(88) : error C2228: left of '.ReadProcess' must have class/struct/union
1>        type is ''unknown-type''
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(88) : error C2065: 'myprocess' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(89) : error C2065: 'preader' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(89) : error C2228: left of '.OpenProcess' must have class/struct/union
1>        type is ''unknown-type''
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(94) : error C2065: 'byte' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(94) : error C2059: syntax error : ']'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(95) : error C2065: 'memory' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(95) : error C2065: 'preader' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(95) : error C2228: left of '.ReadProcessMemory' must have class/struct/union
1>        type is ''unknown-type''
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(95) : error C2065: 'out' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(95) : error C2146: syntax error : missing ')' before identifier 'bytesread'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(95) : error C2059: syntax error : ')'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(96) : warning C4832: token '.' is illegal after UDT 'System::BitConverter'
1>        c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll : see declaration of 'System::BitConverter'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(96) : error C2275: 'System::BitConverter' : illegal use of this type as an expression
1>        c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll : see declaration of 'System::BitConverter'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(96) : error C2065: 'memory' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(99) : error C2065: 'memory' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(99) : warning C4832: token '.' is illegal after UDT 'System::BitConverter'
1>        c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll : see declaration of 'System::BitConverter'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(99) : error C2275: 'System::BitConverter' : illegal use of this type as an expression
1>        c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll : see declaration of 'System::BitConverter'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(100) : error C2065: 'preader' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(100) : error C2228: left of '.WriteProcessMemory' must have class/struct/union
1>        type is ''unknown-type''
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(100) : error C2065: 'memory' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(100) : error C2065: 'out' : undeclared identifier
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(100) : error C2146: syntax error : missing ')' before identifier 'byteswritten'
1>c:\users\starjacker0\documents\visual studio 2008\projects\doom 3 - trainer\doom 3 - trainer\Form1.h(100) : error C2059: syntax error : ')'
1>Generating Code...
1>Build log was saved at "file://c:\Users\starjacker0\Documents\Visual Studio 2008\Projects\Doom 3 - trainer\Doom 3 - trainer\Debug\BuildLog.htm"
1>Doom 3 - trainer - 32 error(s), 2 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


Dodam, ze pracuje w C++ Builder, a to jest moje pierwsze podedjscie do Visuala, gdyz trainer zrobiony w C++ Buildera nie chce dzialac, a z kolei w Visual nie chce kompilowac sie. Jestem poczatkujacy i chce zrobic trainer do Doom 3 podnoszacy poziom zycia do 99 lub 100.
Bestią jestem, by się bestią nie stać
starjacker0
New member
 
Posty: 3
Dołączył(a): Śr maja 05, 2010 4:52 pm

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Postprzez `DrumZy » Śr maja 05, 2010 5:41 pm

Ech, to nie jest C++ tylko C#!!

Użyj C# Builder, a nie C++... gosh
`DrumZy
Member
 
Posty: 93
Dołączył(a): Pt maja 22, 2009 6:56 pm
Lokalizacja: Piotrków Trybunalski

Re: [CE+C#] Jak napisać Trainer'a + Pointer'y [v2.0]

Sponsors

Sponsor
 

Następna strona

Powrót do Artykuły

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość

cron