B
blackdove
Unregistered / Unconfirmed
GUEST, unregistred user!
大家恿跃帮助我,实在让我感动,呜呜.....<br>(不会是为了拿分吧,嘿嘿)<br>多谢amo,多谢Another_eYes,多谢HubDog和Jams.<br><br>我是这几天才来到大富翁论坛的,初来乍道,得到各位的帮助,确实很感谢大家,<br>我想提几个问题和建议:<br>1:如果我的得分为0了,我还能提问吗?<br>2:我也不好意思只提问,不回答,但如果要回答问题是不是非要上网在线才行?<br> 如果一边上网,一边写文档,岂不是太花钱了(我在家里上网,费用实在不敢<br> 太多),用pop3的话,只要不到3分钟,就可以马上下来。我每次提问时,都是先<br> 写成一个.txt,然后再拨号上网,上网后,只要paste一下就行了。<br>3:所以我想能不能用邮件列表的形式来提问和回答,象soim那样。<br>4:大富翁网站的速度很慢,且有时连不上去。是因为人太多,还是其它的原因?!<br>以上仅供参考,欢迎大家和我一起讨论用什么形式交流最好。<br><br>我学Delphi是用的一本Marco Cantu著的《Delphi4从入门到精通》,可在这本书中<br>Cantu尽量避免使用指针,所以根本没有谈到类似pbyte的数据类型。<br>在Delphi4的help中居然找不到PByte,只能找到PByteArray和Byte!<br><br>还想问一个问题,再哪里能买到侯俊杰写的书,我找了大半个武汉市,也没能<br>买到“深入浅出MFC”!<br><br><br>以下是我关于PByte在实际编程中碰到的问题,干脆把源程序拿出来,<br>请大家帮我指点指点。<br><br>我用Delphi做了一个.dll,里面有两个我写的函数,用来操作注册表,我<br>用到了Delphi提供的VCL库,但这个.dll实在太庞大了(不到100行的程序,<br>生成的.dll文件竟有275K),我想这可能是因为包含了VCL库的原因,因此,<br>我想做一个实验:<br> 还是用Delphi做.dll,但不用Delphi与注册表相关的类写函数,全部<br>用API写,看一看做出的.dll到底有多大,但是Delphi与API在数据类型上匹<br>配不如C好。我碰到一个问题,在Delphi中,怎样处理PByte,怎样从PByte得<br>到我想要的string。<br><br>以下是源程序:<br><br>procedure TForm1.Button1Click(Sender: TObject);//写数据进入Reg<br>var<br> phkResult:HKEY;<br> aChar;<br>begin<br> a:='250';<br> RegCreateKey(HKEY_CURRENT_USER,'Software/我的软件公司/我的产品/位置',phkResult);<br> RegSetValueEx(phkResult,'Left',0,REG_SZ,a,Length(a));<br>end;//以上都没有问题<br><br>procedure TForm1.Button2Click(Sender: TObject);//想读数据from Reg<br>var<br> phkResult:HKEY;<br>// wwTypeDWORD;<br> wwDataByte;<br> wwSizeDWORD;<br>begin<br>// wwType:=nil;<br> wwData:=nil;<br> wwSize:=nil;<br> if RegOpenKeyEx(HKEY_CURRENT_USER,'Software/我的软件公司/我的产品/位置',0,KEY_ALL_ACCESS,phkResult)=ERROR_SUCCESS then<br> begin//注意RegOpenKeyEx函数所带的参数:KEY_ALL_ACCESS,即允许所有操作,你也可以试一下KEY_QUERY_VALUE。<br> RegQueryValueEx(phkResult,'Left',nil,nil,wwData,wwSize);<br> ShowMessage(StrPas(PChar(wwData)));//关键就在这,怎样从wwData中得到string????????????????????<br> end<br> else<br> ShowMessage('error to openkey');<br>end;<br><br><br>