Exemplo n.º 1
0
 public static extern SafeFileHandle CreateFile(string lpFileName,
                                                LowLevelTypes.FileAccessFlags dwDesiredAccess,
                                                LowLevelTypes.FileShareFlags dwShareMode,
                                                IntPtr lpSecurityAttributes,
                                                LowLevelTypes.FileCreationDisposition dwDisp,
                                                LowLevelTypes.FileFlagsAndAttributes dwFlags,
                                                IntPtr hTemplateFile);
Exemplo n.º 2
0
 public static extern IntPtr SHGetFileInfo(string pszPath,
                                           uint dwFileAttributes,
                                           ref LowLevelTypes.SHFILEINFO psfi,
                                           uint cbFileInfo,
                                           uint uFlags);
Exemplo n.º 3
0
 public static extern LowLevelTypes.NTSTATUS NtQueryInformationProcess(
     IntPtr hProcess,
     LowLevelTypes.PROCESSINFOCLASS pic,
     ref LowLevelTypes.PROCESS_BASIC_INFORMATION pbi,
     int cb,
     out int pSize);
Exemplo n.º 4
0
 public static extern IntPtr OpenProcess(
     LowLevelTypes.ProcessAccessFlags dwDesiredAccess,
     [MarshalAs(UnmanagedType.Bool)] bool bInheritHandle,
     int dwProcessId);
Exemplo n.º 5
0
 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();
 }