AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

XE2 Bios Daten auslesen

Ein Thema von bernhard_LA · begonnen am 8. Sep 2011 · letzter Beitrag vom 14. Dez 2011
Antwort Antwort
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.138 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: XE2 Bios Daten auslesen

  Alt 15. Sep 2011, 13:03
OK der Ansatz zum Auslesen der BIOS Daten spielt nur bis Win 2K ....

muss diese Funktion wohl entsorgen

Geändert von bernhard_LA (15. Sep 2011 um 13:07 Uhr)
  Mit Zitat antworten Zitat
s3rh47

Registriert seit: 13. Dez 2011
7 Beiträge
 
#2

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 08:34
ReadProcessMemory und WriteProcessMemory funktoniert beim Delphi sieben einwandfrei. Aber beim xe2 immer diese trottole fehler bekomme ich. Ich kann kein mehr lösung finden

[DCC Fehler] Unit1.pas(59): E2033 Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen

bitte hilfe :S

Code:
uses
Windows, Messages;

{$R Loader.RES}

var
  si : Startupinfo;
  pi : Process_Information;
  NewData : array[0..1] of byte = ($90,$90);
  NewDataSize : DWORD;
  Bytesread : DWORD;
  Olddata : array[0..1] of byte;

begin
   NewDataSize := sizeof(newdata);
  IF CreateProcess(nil,'Example.exe',nil,nil,FALSE,
                              Create_Suspended,nil,nil,si,pi) = true then

  begin
    ReadProcessMemory(pi.hprocess,Pointer($403CEA),@olddata,2,bytesread);
    if (olddata[0] = $75) and (olddata[1] = $19) then
    begin
      WriteProcessMemory(pi.hProcess, Pointer($403CEA), @NewData, NewDataSize, bytesread);
      ResumeThread(pi.hThread);
    end else
  begin
    Messagebox(0,pchar('Bytes not found! Wrong version?...'),pchar('Error'),mb_iconinformation);
    TerminateProcess(PI.hProcess,0);
  end;
  CloseHandle(PI.hProcess);
  CloseHandle(PI.hThread);
end;
end.

Geändert von s3rh47 (13. Dez 2011 um 08:38 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.352 Beiträge
 
Delphi 12 Athens
 
#3

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 09:10
Schau was die Funktion für Parametertypen haben will und dann paß' deine Variablen daran an.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
s3rh47

Registriert seit: 13. Dez 2011
7 Beiträge
 
#4

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 09:30
function ReadProcessMemory(hProcess: THandle; const lpBaseAddress: Pointer; lpBuffer: Pointer;
nSize: SIZE_T; var lpNumberOfBytesRead: SIZE_T): BOOL; stdcall;

1. Parameter = Thandle
2. Parameter = Pointer
3. Parameter = Pointer
4. Parameter = SIZE_T
5. Parameter = SIZE_T

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

var
 FileName : String;
 StartInfo : TStartUpInfo;
 ProcInfo : TProcessInformation;
 AllGood : Boolean;
 ReadByte : SIZE_T;
 OrjinalBytes : byte;
begin

  OrjinalBytes:=($90);
  FileName := 'Beispiel.exe';
  //Fill the PRocinfo and Startinfo with a buffer
  FillChar(StartInfo,SizeOf(TStartupInfo),#0);
  FillChar(ProcInfo,SizeOf(TProcessInformation),#0);
  //Lets "Try" to create the paltalk process in a suspended state
  AllGood := CreateProcess(Pchar(Dosya),nil,nil,nil,False,CREATE_SUSPENDED,nil,nil,StartInfo,ProcInfo);

  if Allgood then
  begin

  ShowMessage('Geht Schon');

   ReadProcessMemory(PRocInfo.hProcess,Pointer($00146565),@OrjinalBytes,1,1,ReadByte);

  end;

   ResumeThread(ProcInfo.hThread);

   CloseHandle(ProcInfo.hProcess);

end;

Ist wieder gleich :S

Geändert von s3rh47 (13. Dez 2011 um 09:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 09:32
Da stimmt wohl der Aufruf mit der Deklaration nicht über ein, was die Datentypen angeht. Und was ist hier Zeile 59?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
s3rh47

Registriert seit: 13. Dez 2011
7 Beiträge
 
#6

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 09:40
Und Warum bei Delphi7 kein problem ?

Ich habe alle Varible probiert geht nicht ! byte , word,dword, integer , Char , PChar , AnsiChar , WideChar, Pointer ,real, Extended ,string,ShorString trotzdem immer wieder gleiche Fehler...

Kann auch Assemblye !
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.352 Beiträge
 
Delphi 12 Athens
 
#7

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 12:37
Und Warum bei Delphi7 kein problem ?

Ich habe alle Varible probiert geht nicht ! byte , word,dword, integer , Char , PChar , AnsiChar , WideChar, Pointer ,real, Extended ,string,ShorString trotzdem immer wieder gleiche Fehler...

Kann auch Assemblye !
Nicht probieren .... NACHSEHN und dann machen
Und da über VAR gemeckert wird, kann es nur lpNumberOfBytesRead sein.

PS: zähle mal deine Parameter
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (13. Dez 2011 um 12:40 Uhr)
  Mit Zitat antworten Zitat
s3rh47

Registriert seit: 13. Dez 2011
7 Beiträge
 
#8

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 13:04
Also wenn ich keine Seh probleme hab , ich sehe dort 5 parameter

http://i40.tinypic.com/dmxnpy.jpg

Wo ist fehler jetzt ? Ich kann nicht mehr sehen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.658 Beiträge
 
Delphi 12 Athens
 
#9

AW: XE2 Bios Daten auslesen

  Alt 13. Dez 2011, 13:45
Was denn nun, Read oder Write? Ich habe mal gezählt:
Zitat:
Delphi-Quellcode:
ReadProcessMemory(PRocInfo.hProcess (* 1 *),
                  Pointer($00146565)(* 2 *),
                  @OrjinalBytes (* 3 *),
                  1 (* 4 *),
                  1 (* 5 *),
                  ReadByte (* 6 *));
Passt nicht ganz, oder?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz