无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: mdyblog
打印 上一主题 下一主题

[更新376#2825]PECMD2012.1.80.13_Win32_64.多窗口多线程.裸机系统2.3.3.1+18M酷M...

    [复制链接]
17581#
发表于 2022-8-2 12:52:52 | 只看该作者
回复

使用道具 举报

17582#
 楼主| 发表于 2022-8-2 12:53:23 | 只看该作者
826773297 发表于 2022-8-2 12:51
我放弃使用dpi了,采用盲猜模式,依赖更少

没事。
发上来。 有人用API写的位函数的。

点评

有现成的接口吗  详情 回复 发表于 2022-8-2 12:59
我发现微软也是在盲猜,但是他不太愿意承认  详情 回复 发表于 2022-8-2 12:57
回复

使用道具 举报

17583#
发表于 2022-8-2 12:57:02 | 只看该作者
mdyblog 发表于 2022-8-2 12:53
没事。
发上来。 有人用API写的位函数的。

我发现微软也是在盲猜,但是他不太愿意承认
回复

使用道具 举报

17584#
发表于 2022-8-2 12:58:20 | 只看该作者
pecmd功能已经很多了。测试版都测试了小半年了。
稳定了也该转正了。

点评

嗯  详情 回复 发表于 2022-8-2 14:19
回复

使用道具 举报

17585#
发表于 2022-8-2 12:59:40 | 只看该作者
mdyblog 发表于 2022-8-2 12:53
没事。
发上来。 有人用API写的位函数的。

有现成的接口吗

点评

函数 IsConnectInternet // BICon {28o版}\示例\IsConnectInternet.wcs 含文档 MSDN文档传到网盘了,方便找调用API需要的资料 ======================================= ENVI^ ForceLocal=1 IsConnectInt  详情 回复 发表于 2022-8-2 20:14
回复

使用道具 举报

17586#
 楼主| 发表于 2022-8-2 14:19:05 来自手机 | 只看该作者
freesoft00 发表于 2022-8-2 12:58
pecmd功能已经很多了。测试版都测试了小半年了。
稳定了也该转正了。

回复

使用道具 举报

17587#
 楼主| 发表于 2022-8-2 20:14:13 | 只看该作者
本帖最后由 mdyblog 于 2022-8-2 22:23 编辑

函数
IsConnectInternet  // BICon [bLCon]
目前用的简化写法,需要 {28o版} PECMD。
{28o版}\示例\IsConnectInternet.wcs  含文档
MSDN文档传到网盘了,方便找调用API需要的资料
=======================================
ENVI^ ForceLocal=1

IsConnectInternet &&InternetRet &&LocalRet
MESS Internet[%&InternetRet%]  LocalNet[%LocalRet%]

_SUB IsConnectInternet  // BICon [bLCon]
  SET &bIntnet=
  SET &bLConnect=
  SET$ &mpNetworkListManager=*8 0
  SET &CLSCTX_INPROC_SERVER=0x1
  CALC #&&CLSCTX_ALL=1|2|4|0x10
  SET#$ &CLSID_NetworkListManager=01 0C B0 DC  0F 57  9B 4A  8D 69  19 9F DB A5 72 3B //{DCB00C01-570F-4A9B-8D69-199FDBA5723B}
  SET#$ &IID_INetworkListManager=00 00 B0 DC  0F 57 9B 4A  8D 69  19 9F DB A5 72 3B  //{DCB00000-570F-4A9B-8D69-199FDBA5723B}
  SET &pNetworkListManager=0

  {*
    lock .ole
    CALL $--ret:* --qd --16  OLE32.DLL,CoCreateInstance,&&rs,*CLSID_NetworkListManager,#0,#%CLSCTX_ALL%,*IID_INetworkListManager,*mpNetworkListManager
    IFEX  #[ 0<>%&rs% ], EXIT -
    SET &get_IsConnectedToInternet=11  //函数序号
    SET &get_IsConnected=12  //函数序号
  
    SET#$  &IsConnect=*8 0
    FIND $%~1<>,
    {* ^CALL $--ret:&&rs --qd*  #,*&mpNetworkListManager.%get_IsConnectedToInternet%,IsConnect
        @IFEX #%rs%=0,!! @IFEX #%&IsConnect?short:0%<>0, SET bIntnet=1! SET SET bIntnet=0
    }
    FIND $%~2<>,
    {* CALL $--ret:&&rs --qd*  #,*&mpNetworkListManager.%get_IsConnected%,IsConnect
      @IFEX #%rs%=0,!! @IFEX #%&IsConnect?short:0%<>0, SET bIntnet=1! SET SET bIntnet=0
    }
    CALL $--ret:&&rs  #,*&mpNetworkListManager.2 //2:Release() 释放COM
  }
  ENVI-ret %~1=%bIntnet%
  FIND $%~2<>, ENVI-ret %~2=%bLConnect%
_END


点评

这个是很久之前就想要的COM接口调用?  详情 回复 发表于 2022-8-3 00:41
好的,我记录一下  详情 回复 发表于 2022-8-2 20:35
回复

使用道具 举报

17588#
发表于 2022-8-2 20:35:51 | 只看该作者
mdyblog 发表于 2022-8-2 20:14
函数
IsConnectInternet  // BICon
目前用的简化写法,需要 {28o版} PECMD。

好的,我记录一下
回复

使用道具 举报

17589#
发表于 2022-8-2 21:45:52 | 只看该作者
本帖最后由 Anson4 于 2022-8-2 21:51 编辑

这几天发现一个问题:当 TABL 的表头和内容分开各自设置对齐之后,就不能用鼠标调整列宽了。应该是从 PECMD2012.1.88.05.88Stable-220527G 开始的

_TABL_TEST_COLUMN.zip (1.08 KB, 下载次数: 3)

点评

28P  详情 回复 发表于 2022-8-2 23:21
回复

使用道具 举报

17590#
 楼主| 发表于 2022-8-2 23:21:30 | 只看该作者
Anson4 发表于 2022-8-2 21:45
这几天发现一个问题:当 TABL 的表头和内容分开各自设置对齐之后,就不能用鼠标调整列宽了。应该是从 PECMD ...

28P

点评

问题已解决,感谢更新! 不过,此时发现了另一个问题:当 EDIT 控件设置了背景色时,如果使用某些字体比如微软雅黑或者 Segoe UI,会出现背景色的两端超出边框的现象,请看下图中的红框位置。 [attachimg]505489[/  详情 回复 发表于 2022-8-3 00:21
回复

使用道具 举报

17591#
发表于 2022-8-3 00:21:10 | 只看该作者
本帖最后由 Anson4 于 2022-8-3 00:23 编辑

问题已解决,感谢更新!
不过,此时发现了另一个问题:当 EDIT 控件设置了背景色时,如果使用某些字体比如微软雅黑或者 Segoe UI,会出现背景色的两端超出边框的现象,请看下图中的红框位置。这个问题在 PECMD2012.1.88.05.88Stable-220527G 中是不存在的。



点评

最简单演示代码  详情 回复 发表于 2022-8-3 08:11
回复

使用道具 举报

17592#
发表于 2022-8-3 00:41:42 | 只看该作者
本帖最后由 红毛樱木 于 2022-8-3 00:56 编辑
mdyblog 发表于 2022-8-2 20:14
函数
IsConnectInternet  // BICon
目前用的简化写法,需要 {28o版} PECMD。

这个是很久之前就想要的COM接口调用?
------------------------
里面的格式备注,是否能更详细些?


------------------------
https://docs.microsoft.com/zh-cn ... rk-list-manager-api
翻到了一份官方示例

点评

对。 CALL $... #,*&COM指针PE变量.COM函数索引,COM参数1,COM参数2... 或 CALL $... #,COM指针PE数值.COM函数索引,COM参数1,COM参数2... SET?ptr &COM指针PE变量=COM指针PE数值 //2进制转可见的数  详情 回复 发表于 2022-8-3 08:09
回复

使用道具 举报

17593#
 楼主| 发表于 2022-8-3 08:09:51 | 只看该作者
本帖最后由 mdyblog 于 2022-8-3 08:23 编辑
红毛樱木 发表于 2022-8-3 00:41
这个是很久之前就想要的COM接口调用?
------------------------
里面的格式备注,是否能更详细些?

对。

CALL $...    #,*&COM指针PE变量.COM函数索引,COM参数1,COM参数2...

CALL $...    #,COM指针PE数值.COM函数索引,COM参数1,COM参数2...
SET?ptr   &COM指针PE变量=COM指针PE数值   //2进制转可见的数字串, 提前翻译出来。所以后者不用加个*了。

查找 SDK文档的 COM结构的 C结构说明, 会列出全部 函数, 索引从0 开始。
注意, 参数按C++格式写, 默认的THis指针, 不用再写了,方便,PECMD自己处理。

    SET &get_IsConnectedToInternet=11  //函数序号
   
    CALL $--ret:&&rs --qd*  #,*&mpNetworkListManager.%get_IsConnectedToInternet%,IsConnect


其实这不仅针针对COM, 适用 所有C++ 虚函数调用。COM均是虚函数。


回复

使用道具 举报

17594#
 楼主| 发表于 2022-8-3 08:11:34 | 只看该作者
Anson4 发表于 2022-8-3 00:21
问题已解决,感谢更新!
不过,此时发现了另一个问题:当 EDIT 控件设置了背景色时,如果使用某些字体比 ...

最简单演示代码
回复

使用道具 举报

17595#
发表于 2022-8-3 10:10:04 | 只看该作者
本帖最后由 Anson4 于 2022-8-3 10:24 编辑
mdyblog 发表于 2022-8-3 08:11
最简单演示代码

使用字体 Segoe UI 或者 微软雅黑 后:
1. LIST 控件的高度变大
2. EDIT 控件的背景色左右两端超出边界线
_TABL_TEST_COLUMN_EDIT.zip (1.26 KB, 下载次数: 5)

点评

28G版 -venter:-6 表示 预留字体高度的1/6.  详情 回复 发表于 2022-8-3 12:33
哦。 和姿态有关 怪不得, 我自己的代码复现不了。  详情 回复 发表于 2022-8-3 10:25
回复

使用道具 举报

17596#
 楼主| 发表于 2022-8-3 10:25:16 | 只看该作者
本帖最后由 mdyblog 于 2022-8-3 10:29 编辑
Anson4 发表于 2022-8-3 10:10
使用字体 Segoe UI 或者 微软雅黑 后:
1. LIST 控件的高度变大
2. EDIT 控件的背景色左右两端超出边界 ...

哦。 和 字体 有关
怪不得, 我自己的代码复现不了。
与 背景色 无关

ENVI @This.Font=9:宋体
就不会。
这个字体 有外溢

点评

但是有些版本不会出现这个现象,比如 PECMD2012.1.88.05.88Stable-220527G  详情 回复 发表于 2022-8-3 10:37
还有个问题让我很是困扰:TABL 的内容偶尔会出现某一行内容乱码,字体变形等现象,没有发现什么规律,也没办法重现。 [attachimg]505503[/attachimg]  详情 回复 发表于 2022-8-3 10:35
回复

使用道具 举报

17597#
发表于 2022-8-3 10:35:29 | 只看该作者
mdyblog 发表于 2022-8-3 10:25
哦。 和 字体 有关
怪不得, 我自己的代码复现不了。
与 背景色 无关

还有个问题让我很是困扰:TABL 的内容偶尔会出现某一行内容乱码,字体变形等现象,没有发现什么规律,也没办法重现。

点评

是不是 动态 删除行的时候?  详情 回复 发表于 2022-8-3 11:49
回复

使用道具 举报

17598#
发表于 2022-8-3 10:37:28 | 只看该作者
mdyblog 发表于 2022-8-3 10:25
哦。 和 字体 有关
怪不得, 我自己的代码复现不了。
与 背景色 无关

但是有些版本不会出现这个现象,比如 PECMD2012.1.88.05.88Stable-220527G

点评

所有版本都会的 这个版本 也会的, -vcenter + 特殊字体,就会溢出: [attachimg]505509[/attachimg] 不用 -venter就不会。  详情 回复 发表于 2022-8-3 11:54
回复

使用道具 举报

17599#
 楼主| 发表于 2022-8-3 11:49:29 | 只看该作者
Anson4 发表于 2022-8-3 10:35
还有个问题让我很是困扰:TABL 的内容偶尔会出现某一行内容乱码,字体变形等现象,没有发现什么规律,也 ...

是不是 动态 删除行的时候?

点评

没有删除,只是设置了字体颜色和粗体。  详情 回复 发表于 2022-8-3 12:12
回复

使用道具 举报

17600#
 楼主| 发表于 2022-8-3 11:54:23 | 只看该作者
Anson4 发表于 2022-8-3 10:37
但是有些版本不会出现这个现象,比如 PECMD2012.1.88.05.88Stable-220527G

所有版本都会的
这个版本 也会的, -vcenter + 特殊字体,就会溢出:


不用 -venter就不会。

点评

你测试的这个结果是对的,只是存在例外,请看下图: 同样的设置,同样用 PECMD2012.1.88.05.88Stable-220527G,没有出现溢出的问题。 [attachimg]505511[/attachimg]  详情 回复 发表于 2022-8-3 12:32
你测试的这个结果是对的,只是存在例外,请看下图: 同样的设置,同样用 PECMD2012.1.88.05.88Stable-220527G,没有出现溢出的问题。 [attachimg]505510[/attachimg]  详情 回复 发表于 2022-8-3 12:20
回复

使用道具 举报

17601#
发表于 2022-8-3 12:12:09 | 只看该作者
mdyblog 发表于 2022-8-3 11:49
是不是 动态 删除行的时候?

没有删除,只是设置了字体颜色和粗体。
回复

使用道具 举报

17602#
发表于 2022-8-3 12:32:49 | 只看该作者
本帖最后由 Anson4 于 2022-8-3 13:08 编辑
mdyblog 发表于 2022-8-3 11:54
所有版本都会的
这个版本 也会的, -vcenter + 特殊字体,就会溢出:

你测试的这个结果是对的,只是存在例外,请看下图: 同样的设置,同样用 PECMD2012.1.88.05.88Stable-220527G,没有出现溢出的问题。
回复

使用道具 举报

17603#
 楼主| 发表于 2022-8-3 12:33:08 | 只看该作者
本帖最后由 mdyblog 于 2022-8-3 14:19 编辑
Anson4 发表于 2022-8-3 10:10
使用字体 Segoe UI 或者 微软雅黑 后:
1. LIST 控件的高度变大
2. EDIT 控件的背景色左右两端超出边界 ...

28G版
-vcenter:-6
表示 预留字体高度的1/6.

点评

这是个新的参数还是 -vcenter 改成 -venter 了呢? 我差点看成了 -vcenter:-6[attachimg]505514[/attachimg]  详情 回复 发表于 2022-8-3 13:35
回复

使用道具 举报

17604#
发表于 2022-8-3 13:35:13 | 只看该作者
本帖最后由 Anson4 于 2022-8-3 14:01 编辑
mdyblog 发表于 2022-8-3 12:33
28G版
-venter:-6
表示 预留字体高度的1/6.

28Q可以了,这是个新的参数还是 -vcenter 改成 -venter 了呢?
我差点看成了 -vcenter:-6


点评

是 -vcenter:-1 就是原来的 -vcenter 扩展聊下  详情 回复 发表于 2022-8-3 14:18
回复

使用道具 举报

17605#
 楼主| 发表于 2022-8-3 14:18:30 | 只看该作者
本帖最后由 mdyblog 于 2022-8-3 14:21 编辑
Anson4 发表于 2022-8-3 13:35
28Q可以了,这是个新的参数还是 -vcenter 改成 -venter 了呢?
我差点看成了 -vcenter:-6

是 -vcenter:-6
就是原来的 -vcenter 扩展了下

点评

明白了,可是 -vcenter:-6 不起作用,而 -venter:-6 可以。  详情 回复 发表于 2022-8-3 14:29
回复

使用道具 举报

17606#
发表于 2022-8-3 14:29:06 | 只看该作者
本帖最后由 Anson4 于 2022-8-3 17:41 编辑
mdyblog 发表于 2022-8-3 14:18
是 -vcenter:-6
就是原来的 -vcenter 扩展了下

明白了!
实际测试 -vcenter:-6 在简单的演示脚本中生效,可是用到现有的脚本中却不起作用,有点懵。
我觉得肯定还有什么因素造成了影响

点评

应该是 -vcenter:-6 [attachimg]505527[/attachimg] -venter:-6 的做用在于 把 -vcenter也高没了。 没 -vcenter, 不会出溢出问题。 相当于: EDIT EDIT1,L37T71W160H26, EDIT1,,,0xFF00#0xFFFFFF 这  详情 回复 发表于 2022-8-3 17:32
回复

使用道具 举报

17607#
 楼主| 发表于 2022-8-3 17:32:44 | 只看该作者
Anson4 发表于 2022-8-3 14:29
明白了,可是 -vcenter:-6 不起作用,而 -venter:-6 可以。
新版PECMD才可以 -vcenter:-6。
应该是 -vcenter:-6


-venter:-6 的作用在于 把  -vcenter也高没了。 没 -vcenter, 不会出溢出问题。
相当于:
    EDIT EDIT1,L37T71W160H26, EDIT1,,,0xFF00#0xFFFFFF
这样不会溢出。

点评

22621内核pe显示桌面功能出问题了,m大修复一下  详情 回复 发表于 2022-8-3 18:24
找到原因了,情况好像有点复杂,当系统的显示比例为 150%,而且使用了按 DPI 缩放时,故障重现了。 [attachimg]505529[/attachimg]  详情 回复 发表于 2022-8-3 18:06
回复

使用道具 举报

17608#
发表于 2022-8-3 18:06:15 | 只看该作者
本帖最后由 Anson4 于 2022-8-3 18:14 编辑
mdyblog 发表于 2022-8-3 17:32
新版PECMD才可以 -vcenter:-6。
应该是 -vcenter:-6

找到原因了,情况好像有点复杂,当系统的显示比例为 150%,而且使用了按 DPI 缩放时,故障重现了。
_TABL_TEST_COLUMN_EDIT.zip (1.61 KB, 下载次数: 11)


点评

28S 版 。 随 scal开关自动缩放 这个参数、 效果: [attachimg]505534[/attachimg]  详情 回复 发表于 2022-8-3 19:31
哦你关闭系统缩放 感知。 手动scale 怪不得不一样。 这样-6也要对应缩放到 -6/1.5=-4 如图: [attachimg]505533[/attachimg]  详情 回复 发表于 2022-8-3 18:44
回复

使用道具 举报

17609#
发表于 2022-8-3 18:24:27 | 只看该作者
mdyblog 发表于 2022-8-3 17:32
新版PECMD才可以 -vcenter:-6。
应该是 -vcenter:-6

22621内核pe显示桌面功能出问题了,m大修复一下

点评

具体?  详情 回复 发表于 2022-8-3 19:23
回复

使用道具 举报

17610#
 楼主| 发表于 2022-8-3 18:44:51 | 只看该作者
Anson4 发表于 2022-8-3 18:06
找到原因了,情况好像有点复杂,当系统的显示比例为 150%,而且使用了按 DPI 缩放时,故障重现了。

哦你关闭系统缩放 感知。 手动scale
怪不得不一样。
这样-6也要对应缩放到 -6/1.5=-4
如图:



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-24 13:20

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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