首页
论坛
专栏
课程

[.NET平台] [求助]关于注册表加载启动程序的一个奇怪的问题

2009-4-9 10:52 2744

[.NET平台] [求助]关于注册表加载启动程序的一个奇怪的问题

2009-4-9 10:52
2744
程序功能:记录开关机时间和上网时间,开机自动运行。
编写环境:VS2005,XP SP3,语言:VC++,MFC。

问题描述:程序启动后向程序当前目录下的record.log添加一字符串信息,记录程序启动时间。启动定时器,根据联网状态,周期性的记录联网时间。为了使程序能开机自动运行,程序启动时检测并向注册表的HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run中添加本程序的路径。奇怪的问题是:开机后,通过注册表可以让程序自动启动,虽然程序在运行,却不向record.log添加任何记录信息,不记录任何信息。查看任务管理器,程序的I/O也一直在不断进行,可record.log就是没有任何信息。

    而如果不通过注册表启动,直接拷贝本程序的快捷方式到windows的“开始->所有程序->启动”目录下让程序自动运行,则程序表现正常,可以记录启动时间和联网时间。

    程序中用来写文本信息的是CStdioFile类,到后来换成fstream类,都不行。

    程序应该是没有错误,不知道是不是什么东西阻止了我的程序的读写操作。

    后来又写了一个引导程序(也由注册表加载自动运行),通过引导程序来加载我要运行的程序,还是不行:无法读写文本文件信息。然后加入Sleep,让程序开机后休眠一段时间再运行也不行。

    不知道各位有没有遇到过这个奇怪的问题。

[公告]安全测试和项目外包请将项目需求发到看雪企服平台:https://qifu.kanxue.com

最新回复 (1)
郑州gxf 2009-5-9 18:51
2
0
你说的问题,很奇怪哦,
游客
登录 | 注册 方可回帖
返回