能力值:
( LV3,RANK:20 )
|
-
-
2 楼
只能先把数字转为unicode 然后再复制到另一个字符串中了。
|
能力值:
( LV3,RANK:20 )
|
-
-
3 楼
Buffer=(PWSTR)ExAllocatePool(PagedPool,512);
wsprintfW(Buffer,L"\\Device\\MyDevice%d",i);
RtlInitUnicodeString(&DeviceName[i],Buffer);
加了头文件出错,
这个wsprintf的变量列表可以直接整数型的吧?
Compiling - onepc.c for i386
d:\winddk\2600\inc\crt\winuser.h(59) : error C2143: syntax error : missing ')' b
efore '*'
都是在文件里出错,,
|
能力值:
( LV12,RANK:240 )
|
-
-
4 楼
swprintf()被内核导出
|
能力值:
( LV3,RANK:20 )
|
-
-
5 楼
谢谢小四大侠~~~
|
能力值:
( LV3,RANK:20 )
|
-
-
6 楼
再问一下关于数组地址的问题, 基础感觉太差,,,学得有些力不从心
RtlInitUnicodeString(&DeviceName[i],Buffer);
IoCreateDevice(mydriver,NULL,&DeviceName[i],FILE_DEVICE_UNKNOWN,NULL,TRUE,&PDevice);
第一条rtlini的语句不报错,但是iocreatedevice会报错
onepc.c(34) : error C2220: warning treated as error - no object file generated
onepc.c(34) : error C4047: 'function' : 'ULONG' differs in levels of indirection
from 'void *'
onepc.c(34) : error C4047: 'function' : 'ULONG' differs in levels of indirection
from 'void *'
BUILD: Compile errors: not linking d:\winddk\code\create directory
BUILD: Done
在不同的级别引用??
这个取unicode_string地址不能&这样么?但是第一条rtlini的语句不报错~
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
NULL,TRUE,&PDevice);
原来是这里。扩展设备大小。。我一直还以为是汇编那里定义的null=0。看了一下。原来null 是(void *)0
|
|
|