DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: cuiqingbo
今日帖子: 25
在线用户: 9
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 janker (janker) ★☆☆☆☆ -
盒子活跃会员
2021/6/2 17:48:56
标题:
win7 自启动程序的问题,救急啊...... 浏览:1498
加入我的收藏
楼主: 一个单机程序,运行在win7下,设置成开机自启动(注册表的RUN里面),win7系统取消了登录界面。(程序是在win10下开发的,32,delphi3.3)
一个奇怪的问题,我的程序拷贝到WIN7,然后运行,正常。
如果电脑重新开机,我的程序自启动运行,问题来了,程序不能读写如何的文件,比如ini,txt,sqlite的文件等等。退出程序到桌面,程序又可以读写文件了!!!!
排查了一天,确认是自启动的问题,如果不是自启动运行,就正常。
这是什么引起的问题啊,(我估计是WIN7取消了登录引起的?)。
但是电脑需求免登录,我的程序也需要开机自启动,要怎么搞????
麻烦各位支支招啊,谢谢谢谢..........
----------------------------------------------
-
作者:
男 go_on (go_on) ★☆☆☆☆ -
盒子活跃会员
2021/6/2 18:28:46
1楼: 用计划任务实施,自动登录后启动,可以指定账号,可能是权限问题
----------------------------------------------
-
作者:
男 keymark (嬲) ▲▲▲△△ -
普通会员
2021/6/2 18:41:45
2楼: 启动到0去了?
取运行目录+‘xxx’?
‘./123.ini’?
----------------------------------------------
[alias]  co = clone --recurse-submodules  up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速https://www.cctry.com/>http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2021/6/2 19:35:18
3楼: 很可能是路径问题。自启动的话,你得到程序的默认路径,不一定是真实路径。有时候会被重定向到windows\system32,或者win32wow64。但不知道这方面,你的代码是怎么写的呢?
----------------------------------------------
只有偏执狂才能生存!
作者:
男 dlfsystem (dlfsystem) ★☆☆☆☆ -
盒子活跃会员
2021/6/2 19:49:06
4楼: 1楼说得有道理
----------------------------------------------
-
作者:
男 janker (janker) ★☆☆☆☆ -
盒子活跃会员
2021/6/3 8:46:58
5楼: 谢谢各位了。。,
1楼的方法可以试试
3楼说到点子上啦,就是因为win7是64位的,所以32的程序自启动有问题,但是我的程序用了IOComp,波形图控件,不支持64,才造成了这个问题。
IOComp里面用了一些ASM,也不好改代码.....
重装32位 win7,反正是专用电脑,上位机
----------------------------------------------
-
作者:
男 janker (janker) ★☆☆☆☆ -
盒子活跃会员
2021/6/3 9:00:21
6楼: 这里有个参考:
https://blog.csdn.net/weixin_42314830/article/details/108651388
----------------------------------------------
-
作者:
男 dbyoung (dbyoung) ★☆☆☆☆ -
普通会员
2021/6/3 10:08:16
7楼: 还有一种方法,就是开机自启动不要放到注册表中,
而是放到开始菜单的启动项中。应该就没有这些问题了。

我都是这么做的。拖一下就完成了自动启动。没有出现过楼主这样的问题。
----------------------------------------------
武汉天气不好
作者:
男 janker (janker) ★☆☆☆☆ -
盒子活跃会员
2021/6/3 10:36:20
8楼: 参考:https://blog.csdn.net/weixin_42314830/article/details/108651388,
全部用绝对路径访问也可以,这样就不管是32还是64位系统了。
哈哈
谢谢大家
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2021/6/4 15:30:51
9楼: 没登录的话,你的程序是服务拉起来的吧,用户是SYSTEM。
桌面注册表环境变量都不是你桌面用户的。
像前面人说的,用绝对路径。
或者放在注册表里,登录到桌面再用。
还有个办法就是你知道用户名密码,CreateProcessWithLogon或CreateProcessAsUser用桌面用户的账号创建进程。
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 janker (janker) ★☆☆☆☆ -
盒子活跃会员
2021/6/28 11:46:56
10楼: 谢谢武大侠,真不知道有这个带用户账号的API..........
----------------------------------------------
-
作者:
男 roadrunner (roadrunner) ★☆☆☆☆ -
盒子活跃会员
2021/6/28 23:44:50
11楼: https://dl3.downloadly.ir/Files/Software/Iocomp_Components_Full_Sources_Product_4.0.4_SP2_Delphi_Rio_Compatible_Downloadly.ir.rar
----------------------------------------------
-
作者:
男 jason156 (如风) ★☆☆☆☆ -
普通会员
2021/7/1 1:13:28
12楼: 如果不是服务,是桌面应用程序
1),control userpassword2 设置个自动登录的用户
2),把应用程序创建个快捷方式.
3),把快捷方式拷贝到该用户的开始菜单-启动里面去
该用户登录以后才会启动这个应用程序, 所有需要的环境都先准备好了.
----------------------------------------------
-
作者:
男 janker (janker) ★☆☆☆☆ -
盒子活跃会员
2021/7/1 17:55:17
13楼: 不能用拖入启动菜单的方法,一是要人工操作,二是很容易被拿掉。
没有涉及到和登录账号关联什么的,目前用绝对路径的方法。
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行54.6875毫秒 RSS