首页
社区
课程
招聘
[求助]关于GetVolumeInformation的问题!(已解决)
发表于: 2007-3-19 19:08 6420

[求助]关于GetVolumeInformation的问题!(已解决)

2007-3-19 19:08
6420
最近学习的时候,遇到个问题,代码如下主要是用来测试GetVolumeInformation函数的:
.386
.model flat, stdcall
option casemap :none

include windows.inc
include user32.inc
include kernel32.inc

includelib user32.lib
includelib kernel32.lib

.data?
M_VolumeNameBuffer dd ?

.data
M_Namesize db 0bh

.code
Start:
invoke GetVolumeInformation,NULL,M_VolumeNameBuffer,M_Namesize,NULL,NULL,\
NULL,NULL,NULL
mov eax,[M_VolumeNameBuffer]
invoke ExitProcess,NULL
end Start
生成的exe文件用OD载入一看,M_VolumeNameBuffer的值为零,看了一下MSDN好像没错啊,请大侠看看!谢谢!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 796
活跃值: (370)
能力值: ( LV9,RANK:380 )
在线值:
发帖
回帖
粉丝
2
GetVolumeInformation是有返回值的貌似
2007-3-20 00:33
0
雪    币: 193
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
M_VolumeNameBuffer中应该得到卷标名啊,可是OD看下什么都没有啊!
2007-3-20 09:37
0
雪    币: 247
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
这么写
local @dwDiskC:DWORD
invoke        GetVolumeInformation, CTEXT("c:\\"), 0, 0, addr @dwDiskC, 0, 0, 0, 0
返回值在@dwDiskC
2007-3-20 09:54
0
雪    币: 193
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
最初由 pengmo 发布
这么写
local @dwDiskC:DWORD
invoke GetVolumeInformation, CTEXT("c:\\"), 0, 0, addr @dwDiskC, 0, 0, 0, 0
返回值在@dwDiskC

谢谢!但是我想得到程序所在的磁盘卷标名,是否只需将第一个参数设为NULL?
2007-3-20 16:57
0
雪    币: 193
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
大汗,原来是我基本功不扎实,问题解决了.看书去了!谢谢pengmo!
2007-3-21 10:41
0
游客
登录 | 注册 方可回帖
返回
//