Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: EventTraceLogger ETW

  Alt 5. Nov 2022, 00:10
DbgPrint lässt sich zwar ohne Fehlermeldung im Logger aktivieren (auch wenn es in der offiziellen Doku nicht drin steht, aber in der MOF finde ich es und Andere haben es auch in Systemdateien nachgewiesen),
aber es wird nichts empfangen.

Weder stundenlang von irgendeinem Programm im Windows, noch wenn ich es selber aufrufe.

Delphi-Quellcode:
function DbgPrint(Format: PAnsiChar): ULONG; cdecl; varargs;
  external 'NtDll.dllname 'DbgPrint';

function DbgPrintEx(ComponentId, Level: ULONG; Format: PAnsiChar): ULONG; cdecl; varargs;
  external 'NtDll.dllname 'DbgPrintEx';

procedure TForm13.FormCreate(Sender: TObject);
begin
  DbgPrint('%i %X', 12345, 12345);
  DbgPrintEx(77{DPFLTR_IHVDRIVER_ID}, $1 shl 0{DPFLTR_ERROR_LEVEL}, '%i %X', 12345, 12345);
  OutputDebugString('abcde');
end;
Nja, vielleicht funktioniert es nur aus einem Treiber heraus
und außerdem lese ich öffters, dass die API nichts sendet, wenn ID/Level nicht stimmen, bzw. nicht aktiviert wurden. (oder irdendwie so)
MSDN-Library durchsuchenDbgPrint
Zitat:
The DbgPrint routine sends a message to the kernel debugger.

In Windows Vista and later versions of Windows, DbgPrint sends a message only when the conditions that you specify apply (see the Remarks section for information).



MOF: siehe *.mof in C:\Windows
oder C:\Program Files (x86)\Windows Kits (vom Delphi)

bzw. siehe auch C:\ -> Defender, .NET Framework, Powershell, ...
$2B or not $2B

Geändert von himitsu ( 5. Nov 2022 um 00:18 Uhr)
  Mit Zitat antworten Zitat