Привыкнув видеть ярды кода для выполнения, казалось бы, простых задач, я был приятно удивлен прямотой GetCurrentProcessId
. Ранее сегодня я наблюдал, как он запускается в отладчике, когда следил за новым битом кода в подпрограмме DllMain
, которая объединяет идентификатор процесса со встроенным GUID для создания локально уникального имени мьютекса.
Ниже приведена вся процедура, все три машинные инструкции.
mov eax,fs:[00000018]
mov eax,dword ptr [eax+20h]
ret
Кстати, две другие блаженно простые функции Windows API - GetLastError
и SetLastError
; действительно, оба очень похожи на этот.