ProcessImageFileNameWin32

原创 2016年05月30日 14:27:07

Result
       X:\xxx.exe
Note
       The calling application must free the memory call free function
Minimum supported client
       Windows Vista

NTSTATUS GetProcessPath(
    IN  HANDLE          UniqueProcessId,
    OUT PUNICODE_STRING*    ProcessPath )
{
    NTSTATUS Status = STATUS_SUCCESS;
    PVOID Buffer = NULL;
    HANDLE hProcess = NULL;
    ULONG NeedSize = 0;
    CLIENT_ID ci = { 0 };
    OBJECT_ATTRIBUTES oa = { 0 };

    ci.UniqueProcess = UniqueProcessId;
    oa.Length = sizeof( oa );

    Status = NtOpenProcess( &hProcess, PROCESS_QUERY_LIMITED_INFORMATION, &oa, &ci );
    if ( ! hProcess )
        return Status;

    Status = NtQueryInformationProcess( hProcess, ProcessImageFileNameWin32, NULL, 0, &NeedSize );
    if ( ! NeedSize )
        return Status;

    Buffer = malloc( NeedSize );
    memset( Buffer, 0, NeedSize );
    Status = NtQueryInformationProcess( hProcess, ProcessImageFileNameWin32, Buffer, NeedSize, NULL );

    CloseHandle( hProcess );
    *ProcessPath = ( PUNICODE_STRING )Buffer;

    return Status;
}

相关文章推荐

STM32高级开发(13)-Ubuntu下的串口助手minicom

在这么长时间里我们在Ubuntu上调试stm32,大家在使用串口的时候是不是一直都是在宿主机上的串口助手中查看串口信息呢?来回切换是不是很麻烦?那么在这篇中我们就来介绍一下在Ubuntu下的串口助手,...

Win32汇编控制台下的几种输入输出方式

以下文章转自别人的帖子:在熟悉指令、伪指令和汇编语法的过程中, 首先需要的是输入、输出的手段.下面是之前尝试出的控制台输入、输出的几种办法:1、使用 MASM 提供的 StdIn、StdOut 函数;...

Intel硬件指令加速计算CRC32

纯软件实现CRC32经常是借助于查表实现的,当计算CRC32过于频繁时可通硬件指令优化以减少对CPU的占用。目前Intel支持的用于计算CRC的有CRC32和PCLMULQDQ两个指令。本文仅讨论使用...
  • lkkey80
  • lkkey80
  • 2015年02月11日 13:29
  • 3031

STM32中GPIO的8种工作模式

一、推挽输出:可以输出高、低电平,连接数字器件;推挽结构一般是指两个三极管分别受两个互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源决定。         推挽电路是两...

经典_STM32_ADC多通道采样

STM32 ADC多通道转换 描述:用ADC连续采集11路模拟信号,并由DMA传输到内存。ADC配置为扫描并且连续转换模式,ADC的时钟配置为12MHZ。在每次转换结束后,由DMA循环将转换的数据传输...
  • li_qcxy
  • li_qcxy
  • 2017年01月06日 15:01
  • 1664

cortex_m3_stm32嵌入式学习笔记(十四):RTC实时时钟(秒中断)

STM32 的实时时钟( RTC)是一个独立的定时器。 STM32 的 RTC 模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。 ...

Linux环境开发STM32,从环境到调试

最近因为某些原因,工作环境从windows向linux迁移了。原本在windows下开发STM32,现在要改用在linux上开发。     首先简单地描述一下软硬件开发环境。 宿主机: ...

谈谈zlib中crc32的跨平台问题

针对日常程序中一些基础点,进行反思。。。crc32为何要使用uLong类型?
  • dizuo
  • dizuo
  • 2014年11月11日 18:57
  • 2480

Windows下SVN服务的搭建和使用(二)-Win32Svn

VisualSVN-Server+TortoiseSVN是Windows下最方便易用的SVN版本控制工具的组合,但还有一个可选组合Win32Svn+TortoiseSVN. 如图最下边的那个。...
  • netwalk
  • netwalk
  • 2013年11月01日 19:49
  • 5147

STM32 flash读写源程序

/**   ******************************************************************************   * File Name...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ProcessImageFileNameWin32
举报原因:
原因补充:

(最多只允许输入30个字)