gbzx 发表于 2022-9-25 13:26:37

自动设置DPI问题(已成)

本帖最后由 gbzx 于 2022-9-25 16:19 编辑

今天下载kuer的外置工具,里面有显卡驱动包。
PE原来我没放显卡驱动包,只有无线网卡驱动包,启动完成后能自动设置DPI。增加了这个显卡驱动包后,启动过程也能自动设置DPI,
但自动设置DPI是在显卡安装完之前,显卡安装完成后,系统又再次设置系统默认的DPI。在PETOOLS.INI 中有

//////////////////压缩包驱动安装EXEC %CurDir%\CustomDrv\Drvindex.exe -b

安装显卡
如何才能确保在系统显卡安装完成之后,再执行自动设置DPI:pecmd.exeload%CurDir%\setdpi.ini,而不是在显卡安装完成之前执行它。请指教。


wxinchun92 发表于 2022-9-25 13:45:51

驱动加=写在DPI前面EXEC =%CurDir%\CustomDrv\Drvindex.exe -b

minchengan 发表于 2022-9-25 14:07:47

我以前也遇到过类似问题,经高人指点,解决了,我的情况用的下面代码,你照着改(改后面部分即可):
ENVI^ EnviMode=1
EXEC "%&MyName%" TEAM FORX !\PETOOLS\Drivers\DrvIndex.exe,&dev,1,EXEC -wait -wd:* %%&dev%% -b| EXEC !"%%ProgramFiles%%\TrafficMonitor\TrafficMonitor.exe"

justroot 发表于 2022-9-25 14:07:49

学习了。。谢谢

wxinchun92 发表于 2022-9-25 14:13:34

minchengan 发表于 2022-9-25 14:07
我以前也遇到过类似问题,经高人指点,解决了,我的情况用的下面代码,你照着改(改后面部分即可):
ENVI ...

-wait和=有区别???

gbzx 发表于 2022-9-25 16:16:47

minchengan 发表于 2022-9-25 14:07
我以前也遇到过类似问题,经高人指点,解决了,我的情况用的下面代码,你照着改(改后面部分即可):
ENVI ...

谢谢指教,你的太复杂了,我的用如下代码就行了:

//////////////////压缩包驱动安装并自动匹配DPI
TEAM FORX !"\PETOOLS\CustomDrv\Drvindex.exe",&Index,1,EXEC -wait %&Index% -b|load\PETOOLS\setdpi.ini

minchengan 发表于 2022-9-25 17:38:11

gbzx 发表于 2022-9-25 16:16
谢谢指教,你的太复杂了,我的用如下代码就行了:

//////////////////压缩包驱动安装并自动匹配DPI


这种是可以,但会让启动速度变慢,pecmd的配置文件中所有命令不是一条一条运行,而是可以并行运行,在多核CPU中尤其有用,我给的代码是驱动安装只会让其后面的那半句等待。

minchengan 发表于 2022-9-25 17:38:37

wxinchun92 发表于 2022-9-25 14:13
-wait和=有区别???

pecmd的配置文件中所有命令不是一条一条运行,而是可以并行运行,在多核CPU中尤其有用,我给的代码是驱动安装只会让其后面的那半句等待。

wxinchun92 发表于 2022-9-25 18:03:07

minchengan 发表于 2022-9-25 17:38
这种是可以,但会让启动速度变慢,pecmd的配置文件中所有命令不是一条一条运行,而是可以并行运行,在多 ...

跟你不是一样的吗?TEAM 命令

gbzx 发表于 2022-9-25 18:13:48

minchengan 发表于 2022-9-25 17:38
pecmd的配置文件中所有命令不是一条一条运行,而是可以并行运行,在多核CPU中尤其有用,我给的代码是驱动 ...

正解,就是因为并行运行,才导致显卡驱动还没安装完,自动设置DPI已执行完毕

minchengan 发表于 2022-9-25 18:47:12

gbzx 发表于 2022-9-25 18:13
正解,就是因为并行运行,才导致显卡驱动还没安装完,自动设置DPI已执行完毕

我给的代码不会

minchengan 发表于 2022-9-25 18:47:39

wxinchun92 发表于 2022-9-25 18:03
跟你不是一样的吗?TEAM 命令
你仔细研究研究,我以前发过一个帖子求助的

gbzx 发表于 2022-9-25 18:52:26

wxinchun92 发表于 2022-9-25 13:45
驱动加=写在DPI前面

加=也可以,都是等待执行的意思

wxinchun92 发表于 2022-9-25 19:54:30

minchengan 发表于 2022-9-25 18:47
你仔细研究研究,我以前发过一个帖子求助的

你运行了"%&MyName%"你自己的程序,后面TEAM都是一样的啊

gbzx 发表于 2022-9-25 19:58:13

minchengan 发表于 2022-9-25 18:47
我给的代码不会

在PETOOLS里代码如下:

EXEC "%&MyName%" TEAM FORX !\PETOOLS\CustomDrv\Drvindex.exe,&dev,1,EXEC -wait -wd:* %%&dev%% -b| load "\PETOOLS\setdpi.ini"

在PE启动日志里是这样的

        <0>        :操作成功完成。

在PETOOLE.ini里,应该不用EXEC "X:\windows\system32\PECMD.EXE",因为换上在启动阶段,改成
TEAM FORX !\PETOOLS\CustomDrv\Drvindex.exe,&dev,1,EXEC -wait -wd:* %%&dev%% -b| load "\PETOOLS\setdpi.ini"应该是一样的

hua_wuxin 发表于 2022-9-25 20:34:51

gbzx 发表于 2022-9-25 19:58
在PETOOLS里代码如下:

EXEC "%&MyName%" TEAM FORX !\PETOOLS\CustomDrv\Drvindex.exe,&dev,1,EXEC - ...

帮你简化下方便理解。

你的语句相当于:
mess 1
team wait 3000 | load setdpi.ini | mess 2
mess 3
得到的输出是1、2、3。

坛友建议的相当于:
mess 1
exec pecmd.exe team wait 3000 | load setdpi.ini | mess 2
mess 3
得到的输出是1、3、2。第三行不会干等耗时的第二行执行完。

9527sss 发表于 2022-9-25 20:50:33

#在这里快速谢谢分享。回复#

gbzx 发表于 2022-9-25 21:32:51

本帖最后由 gbzx 于 2022-9-25 21:34 编辑

hua_wuxin 发表于 2022-9-25 20:34
帮你简化下方便理解。

你的语句相当于:

你这么解析还不完整,如果是4线程,1234应该是同时执行的,比如第三行代码执行完毕,124还没执行完毕就会出现1245同时执行,这就是多线程。
网友的意思是,2执行完才能执行3,其它可以同时执行,就23不行。他的代码既可以保证2执行完才执行3,又不会阻挡后面代码并行执行,这个我是理解的。
问题是:EXEC "%&MyName%"这个代码代表的是EXEC PECMD.EXE,按道理这个代码是不需要的,因为还在启动阶段,在启动完成后,还要加载配置文件才需要再次启动PECMD.EXE。

hua_wuxin 发表于 2022-9-25 23:58:56

本帖最后由 hua_wuxin 于 2022-9-26 00:14 编辑

gbzx 发表于 2022-9-25 21:32
你这么解析还不完整,如果是4线程,1234应该是同时执行的,比如第三行代码执行完毕,124还没执行完毕就会 ...
pecmd配置文件中的命令是一条一条运行的,这点生成带时间的日志(logs --2 --t=1 --rt=1 xxx.log)看看就能理解了。

exec pecmd.exe "一些耗时但不必等待完成的语句",会另起一个pecmd新进程执行指定的耗时但不必等语句,而原有pecmd进程则不等这个exec的东西结束就继续执行配置文件后面的剩余语句,这才得到了“并行”的效果。

所以EXEC "%&MyName%"还是建议加上,可以节省时间。

gbzx 发表于 2022-9-26 07:47:24

本帖最后由 gbzx 于 2022-9-26 07:48 编辑

hua_wuxin 发表于 2022-9-25 23:58
pecmd配置文件中的命令是一条一条运行的,这点生成带时间的日志(logs --2 --t=1 --rt=1 xxx.log)看看就 ...
如果是如你所说,那EXEC "%&MyName%"就不能去除,否则启动变慢。

阿卡特201314 发表于 2022-9-26 08:05:48

感谢楼主分享

gbzx 发表于 2022-9-26 08:52:32

hua_wuxin 发表于 2022-9-25 23:58
pecmd配置文件中的命令是一条一条运行的,这点生成带时间的日志(logs --2 --t=1 --rt=1 xxx.log)看看就 ...

pecmd配置文件中的命令是一条一条运行的,那为何会出现在后面的代码比前面的先执行完?

ldg_2 发表于 2022-9-26 09:25:00

感谢分享,学习了

asas246 发表于 2022-9-26 09:51:05

谢谢分享

asas246 发表于 2022-9-26 19:50:07

谢谢分享

lemontea888 发表于 2022-9-30 19:04:34



谢谢分享!!!!!!!!

xiaoyuan0417 发表于 2022-11-12 21:06:52

gbzx 发表于 2022-9-25 16:16
谢谢指教,你的太复杂了,我的用如下代码就行了:

//////////////////压缩包驱动安装并自动匹配DPI


求教 setdpi.ini 中是啥内容?

jiangweiyuzhang 发表于 2022-11-13 16:25:47

学习了,谢谢!

nowayer 发表于 2023-11-28 12:06:42

页: [1]
查看完整版本: 自动设置DPI问题(已成)