private string QueryProcessImageName(LowLevelTypes.ProcessQueryImageNameMode mode) { StringBuilder moduleBuffer = new StringBuilder(1024); int size = moduleBuffer.Capacity; NativeMethods.QueryFullProcessImageName( processHandle, mode, moduleBuffer, ref size); if (mode == LowLevelTypes.ProcessQueryImageNameMode.NATIVE_SYSTEM_FORMAT) { moduleBuffer.Insert(0, "\\\\?\\GLOBALROOT"); } return(moduleBuffer.ToString()); }
public static extern uint QueryFullProcessImageName( IntPtr hProcess, [MarshalAs(UnmanagedType.U4)] LowLevelTypes.ProcessQueryImageNameMode flags, [Out] StringBuilder lpImageName, ref int size);