谁帮我看看这个程序(我实在是没有办法了)(100分)

  • 主题发起人 主题发起人 cmdline
  • 开始时间 开始时间
C

cmdline

Unregistered / Unconfirmed
GUEST, unregistred user!
program mp3;//这是一个delphi的程序,写入注册表,开机自动运行。<br><br>uses SysUtils, windows, shellapi;<br><br>procedure SelfCopy;<br>var<br>value :array[0..43] of char;<br>HK:HKEY;<br>begin<br>RegOpenKey(HKEY_LOCAL_MACHINE,'Software/Microsoft/Windows/CurrentVersion/Run',HK);<br>value:='C:/TTPlayer/TTPlayer.exe';<br>RegSetvalueEx(HK,'234',0,REG_SZ,@value,32);<br>end;<br>end.<br><br>//整个程序编译无语法问题,但是结果却是在注册表里看不到写进去的值,不知道为什麽?<br>//在很多论坛发了贴,没有人回答;<br>//开机也无法自动运行<br>//本来可以用组件写,但是我想用api写
 
可以正常写入啊......刚试了,你看看是不是机器杀毒软件给禁止了?
 
估计是你的电脑上有什么防火墙之类的被劫获了!程序是正常的!
 
如果程序不行直接用这种方法: 建个批处理文件(如果批处理都写不进去那一定是你机器的问题)<br>@echo off <br>regedit /s 注册表文件路径 (说明:/s是不弹出确认提示直接导入) <br>exit
 
是不是防火墙的问题<br>我去看一看再说
 
只有过程,没有调用。
 
program Project1;<br><br>uses<br>&nbsp; Forms, SysUtils, windows, shellapi;<br><br>{$R *.res}<br>procedure SelfCopy;<br>var<br>value :array[0..43] of char;<br>HK:HKEY;<br>begin<br>RegOpenKey(HKEY_LOCAL_MACHINE,'Software/Microsoft/Windows/CurrentVersion/Run',HK);<br>value:='C:/TTPlayer/TTPlayer.exe';<br>RegSetvalueEx(HK,'234',0,REG_SZ,@value,32);<br>end;<br><br>begin<br>SelfCopy;<br>end.
 
这样写可以:<br>program Project1;<br><br>{$APPTYPE CONSOLE}<br><br>uses SysUtils, windows, shellapi;<br><br>procedure SelfCopy;<br>var<br>value :array[0..43] of char;<br>HK:HKEY;<br>begin<br>RegCreateKey(HKEY_LOCAL_MACHINE,'Software/Microsoft/Windows/CurrentVersion/Run',HK);<br>value:='C:/TTPlayer/TTPlayer.exe';<br>RegSetvalueEx(HK,'234',0,REG_SZ,@value,Sizeof(value));<br>end;<br>begin<br>SelfCopy;<br>end.
 
支持 qiubole 兄。
 
多人接受答案了。
 

Similar threads

后退
顶部