| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1938 人关注过本帖
标题:求WinMain函数的一个参数lpCmdLine所指向的进程命令行缓冲区的理解,作用与 ...
只看楼主 加入收藏
wangxiaosu
Rank: 1
来 自:cumt
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-11-29
结帖率:100%
收藏
已结贴  问题点数:0 回复次数:12 
求WinMain函数的一个参数lpCmdLine所指向的进程命令行缓冲区的理解,作用与应用?
请问各位大侠WinMain函数的一个参数lpCmdLine(指向进程命令行缓冲区的指针):
(1)该如何理解该参数指向的命令行内存,即主要讲讲为什么要设置这样的一个命令行内存?
(2)进程命令行缓冲区中都放了些什么数据?
(3)命令行内存中保存的数据的作用是什么?
(4)什么情况下会用到该参数指向的命令行内存中的数据?
(5)该如何应用该参数指向的命令行内存中的数据?
(6)结合您个人的开发经验,谈谈您在开发软件时对它的使用情况?

为了能更好的理解进程的命令行,请各位大侠按上面的提问回答,回答时标明是第几个问题,谢谢!

我对它已有的理解(可能有误,敬请赐教):
(1)该参数是一个指针,指向内存的一块地址,系统在创建进程时,会将一个命令行缓冲区(包含已执行文件的完整的路径)地址传给它;
(2)该命令行内存始终不会是空的,至少它的第一个标记是可执行文件的名字;
(3)进程可以接收只有一个字符的命令行,即用于终止字符串的0;
(4)C运行库的启动代码开始执行一个GUI程序时,会调用GetCommandLine()函数来获得进程的完整命令行,忽略可执行文件的名称,然后将指向命令行剩余部分的指针传给
     WinMain函数的lpCmdLine参数;
(5)我们可以在命令行的内存空间中写入内容,但不建议;
(6)调用GetCommandLine函数返回的总是同一个缓冲区的地址,所以不建议向它指向的缓冲区中写入数据,因为一旦那样做就不知道它原来的内容了;可以将它中的内容拷贝                      到自己的缓冲区中再写,改等。
搜索更多相关主题的帖子: 缓冲区 软件 
2010-12-27 12:24
你们都要疼我哦
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:火星
等 级:贵宾
威 望:49
帖 子:1296
专家分:2746
注 册:2008-7-13
收藏
得分:50 
楼主的理解很牛叉呀,居然跟最新版的核心编程上的理解一样

这个以前没明白 现在也没明白
期待楼主搞明白后 发出来学习

小妹,哥哥看你骨骼清奇,绝非凡人,将来必成大业,不如这样,你先把裤裤脱了,待哥哥为你开启灵窍,然后我们一起努力钻研如何
2010-12-28 13:42
wangxiaosu
Rank: 1
来 自:cumt
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-11-29
收藏
得分:0 
回复 2楼 你们都要疼我哦
是的,我的理解就是那本书上的,读那本书我只知道那么多了,所以把还不明白的贴出来
2010-12-28 21:58
你们都要疼我哦
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:火星
等 级:贵宾
威 望:49
帖 子:1296
专家分:2746
注 册:2008-7-13
收藏
得分:0 
楼主是徐州矿大的?

你为什么不顺藤摸瓜顺手牵羊的多翻几页去看后面讲的CreateProcess呢?
如果多翻几页  至少你也不会有6个问题这么多了

学这些东东急不来,你也应该暂时放弃这种 完美而详尽 的理解企图。

小妹,哥哥看你骨骼清奇,绝非凡人,将来必成大业,不如这样,你先把裤裤脱了,待哥哥为你开启灵窍,然后我们一起努力钻研如何
2010-12-29 04:01
wangxiaosu
Rank: 1
来 自:cumt
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-11-29
收藏
得分:0 
回复 4楼 你们都要疼我哦
我是矿大的。
我读的没那么快,喜欢将一节不懂得记下来;
我只是觉得自己应该去多了解这些缓存,内存...的东西,将它们的内容搞清楚,这对网络攻防应该很重要吧,希望自己读研究生时读的是这个方向的
这个东西对个人来说像是无底洞,没什么完美不完美的,就看自己愿不愿意去钻研,将它做的更深
2010-12-29 12:05
你们都要疼我哦
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:火星
等 级:贵宾
威 望:49
帖 子:1296
专家分:2746
注 册:2008-7-13
收藏
得分:0 
偶只能说 这些东东不比某个算法 某个语言上的知识点,可以一次性或者是很快的搞清楚 搞的很透彻 达到 完美而详尽的地步。
那本书对于一般人学习来说,已经算是很低层了,但是对于真正想学习 系统  安全 这块知识的人来说,只算是很普通的一本。
这条路从一开始就会让人时刻感到挫折 挫折 还是挫折。。。

从你主贴上来看,你还没完全适应这样的学习方式。
这方面的学习是孤独的。。。。。。

在微软的地盘混,就得痛苦啊

你既然开始看这书 就应该再买本 张银奎 的软件调试 那本书,windbg的使用很重要的。

小妹,哥哥看你骨骼清奇,绝非凡人,将来必成大业,不如这样,你先把裤裤脱了,待哥哥为你开启灵窍,然后我们一起努力钻研如何
2010-12-29 16:21
wangxiaosu
Rank: 1
来 自:cumt
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-11-29
收藏
得分:0 
回复 6楼 你们都要疼我哦
en,我也只有一年的Windows程序设计经验,感觉很喜欢就继续做了;你建议的书,谢了
2010-12-29 21:00
wangxiaosu
Rank: 1
来 自:cumt
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-11-29
收藏
得分:0 
为什么每次总是催着结贴,又没有人给我的问题作出正面回答,我为什么要给分?是不是只要在楼主的回复中有“谢谢”之类的词语,那版主就可以催着结贴呀?
收到的鲜花
2010-12-30 21:55
wangxiaosu
Rank: 1
来 自:cumt
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-11-29
收藏
得分:0 
回复 4楼 你们都要疼我哦
图片附件: 游客没有浏览图片的权限,请 登录注册
2011-01-07 12:47
你们都要疼我哦
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:火星
等 级:贵宾
威 望:49
帖 子:1296
专家分:2746
注 册:2008-7-13
收藏
得分:0 
楼主真执着。 还是看看软件调试 学学OD 用用windbg。

启动函数获得命令行 返回指针放EAX
图片附件: 游客没有浏览图片的权限,请 登录注册


完整命令行指针1520A0内容
图片附件: 游客没有浏览图片的权限,请 登录注册

小妹,哥哥看你骨骼清奇,绝非凡人,将来必成大业,不如这样,你先把裤裤脱了,待哥哥为你开启灵窍,然后我们一起努力钻研如何
2011-01-07 16:25
快速回复:求WinMain函数的一个参数lpCmdLine所指向的进程命令行缓冲区的理解,作 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026010 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved