<.>
Mendapatkan proses induk dalam .NET adalah tugas biasa yang boleh dilaksanakan menggunakan panggilan platform (p/invoke). Walau bagaimanapun, artikel ini memperkenalkan alternatif yang tidak perlu menggunakan p/invoke. Penyelesaian ini menggunakan fungsi ntQueryInformationProcess di perpustakaan NTDLL.DLL, tetapi ia tidak berinteraksi secara langsung melalui p/invoke, tetapi menggunakan kelas ParentProcessUtilities untuk abstrak proses.
Kelas ParentProcessUtilities mengandungi kaedah statik, seperti GetParentProcess, yang menerima contoh kelas Procestess yang menunjukkan proses proses induk.
<code class="language-csharp">[StructLayout(LayoutKind.Sequential)] public struct ParentProcessUtilities { // 这些成员必须与PROCESS_BASIC_INFORMATION匹配 internal IntPtr Reserved1; internal IntPtr PebBaseAddress; internal IntPtr Reserved2_0; internal IntPtr Reserved2_1; internal IntPtr UniqueProcessId; internal IntPtr InheritedFromUniqueProcessId; }</code>
Atas ialah kandungan terperinci Bagaimana untuk mendapatkan proses induk dalam .net tanpa menggunakan p/invoke?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!