c语言char转换,c语言PWCHAR转换char

c语言PWCHAR转换char

答案:1  信息版本:手机版

解决时间 2020-04-13 12:40

已解决

2020-04-12 12:45

void GetProcessInfo(

IN PWCHAR pro_imageName_buf,

IN PWCHAR pro_full_path_buf )

{

ULONG addr = 0;

PEPROCESS EProcess;

PWCHAR p = NULL;

KAPC_STATE apc_state;

NTSTATUS status = STATUS_SUCCESS;

EProcess = PsGetCurrentProcess();

//status = PsLookupProcessByProcessId( ProcessId, &EProcess );

//if ( !NT_SUCCESS(status) )

//{

//return;

//}

addr = (ULONG ) EProcess;

if(addr == 0 || addr == 0xFFFFFFFF)

{

return;

}

//附加到该进程

//KeStackAttachProcess( EProcess, &apc_state );

//addr是EPROCESS中PEB*成员的地址

addr += 0x1B0;

//addr是PEB*

if((addr = *(ULONG*)addr) == 0)

{

//KeUnstackDetachProcess( &apc_state );

return;

}

//addr是PEB中的ProcessParameters

addr += 0x10;

if((addr = *(ULONG*)addr) == 0)

{

//KeUnstackDetachProcess( &apc_state );

return;

}

addr += 0x3C;

//addr是ImagePathName(UNICODE_STRING)

if((addr = *(ULONG*)addr) == 0)

{

//KeUnstackDetachProcess( &apc_state );

return ;

}

wcscpy(pro_full_path_buf,(PWCHAR)addr);

if( (p = wcsrchr(pro_full_path_buf,L'\\')) != NULL)

{

p++;

wcscpy(pro_imageName_buf,p);

}

//KeUnstackDetachProcess( &apc_state );

}

char aPathName[256];

char aFileName[256];

调用:GetProcessInfo((PWCHAR)aFileName,(PWCHAR)aPathName);

获得就是一个字母W,怎么把PWCHAR转换CHAR?

全部回答

1楼

2020-04-12 13:18

直接赋值即可,不用那么麻烦。

int i = 1;

char c = i;

因为c/c++里面的char本就是一个数字(int类型的)。

不过,要注意一个范围的问题,就是这个i得在char数据类型的取值范围内。

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

大家都在看

推荐资讯

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值