找回密码
 加入
搜索
查看: 4272|回复: 11

[系统综合] 检测程序运行模式???? 讨论第一帖--已解决

  [复制链接]
发表于 2010-5-14 14:05:16 | 显示全部楼层 |阅读模式
本帖最后由 zhenglei 于 2010-5-16 14:31 编辑

例如  1.exe   ....  只允许在系统开机时加载启动(如放注册表等地方则可以启动)  当1.exe 在被用户双击执行时则弹出对话框(次程序只可在系统被加载时自动启动。。)
这样的功能不知如何才可以实现????

补充一下。。 实现此功能本人不想用参数来代替实现此功能。。。 参数调用只是给人一错觉感觉实现了以上功能。。 实际并没有实现。。谢谢。。
发表于 2010-5-14 14:20:57 | 显示全部楼层
不明白,看不懂,完全不清楚lz的意思
发表于 2010-5-14 14:21:08 | 显示全部楼层
不明白,看不懂,完全不清楚lz的意思
发表于 2010-5-14 14:29:21 | 显示全部楼层
 楼主| 发表于 2010-5-14 14:41:56 | 显示全部楼层
学会搜索
鸟人 发表于 2010-5-14 14:29



    参数调用只是给人一错觉感觉实现了以上功能。。 实际并没有实现。。谢谢。。
发表于 2010-5-14 15:52:49 | 显示全部楼层
貌似参数调用是最简单的方法了
发表于 2010-5-15 01:18:23 | 显示全部楼层
不想用参数就试试下面这个方法
RegWrite ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\run","test","REG_SZ", @ScriptFullPath)
If Not ProcessExists ("userinit.exe") Then
        MsgBox (0,"","此程序只可在系统被加载时自动启动")
        Exit
EndIf

MsgBox (0,"","程序在系统开机时允许加载启动")
发表于 2010-5-15 01:24:15 | 显示全部楼层
楼上思路可行
发表于 2010-5-15 02:03:40 | 显示全部楼层
刚想起来,还有一种方法,这种方法优势是可以获取系统启动运行的时间,调整起来比较灵活。
RegWrite ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\run","test","REG_SZ", @ScriptFullPath)
$Tick = DllCall("kernel32.dll", "int", "GetTickCount");获取系统启动经过的时间
$T = Int(($tick[0] / 1000));转换为秒
If $t > 60 Then
        MsgBox (0,"","此程序只可在系统被加载时自动启动")
        Exit
EndIf
MsgBox (0,"","程序在系统开机时允许启动")
发表于 2010-5-15 07:27:32 | 显示全部楼层
回复 1# zhenglei
首先,lz做这类程序有恶意软件之嫌,另外,执行之后是结束还是保留
发表于 2010-5-15 09:45:50 | 显示全部楼层
如果只是为了开机启动,检查注册表即可。
如果要实现更复杂的功能,最好还是用参数的形式
 楼主| 发表于 2010-5-16 14:29:51 | 显示全部楼层
哈哈。。 解决了。。好啊。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2025-1-12 04:59 , Processed in 0.073934 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表