解决PEnetwork启动的时候提示"An error occured while starting the "TCP/IP Registry Compatibility" Service (2)!"程序将立即退出的问题

查看了PENetwork.au3的源代码,根据penetwork出错提示:TCPIP registry compatibility,以这个为关键字搜索:
14678行:
$sNetErrTCPRegStart = "An error occured while starting the ""TCP/IP Registry Compatibility"" service"
 
15732行:
; Start tcpipreg service
If IsServiceInstalled("tcpipreg") Then
If Not IsServiceRunning("tcpipreg") Then
Debug("IN: Network check - Start TCPIP registry compatibility service")
$nResult = RunCMD("net start tcpipreg")
If $nResult <> 0 Then
If $bShowGUI Then GUIDelete($hStartNetGUI)
If $bShowErr Then MsgBox(16, $sERROR, $sNetErrTCPRegStart & " (" & $nResult & ")!" & @LF & $sProgramExit)
Return 0
EndIf
EndIf
EndIf
 
在pe里面运行net start tcpipreg提示出错,windows无法验证此文件的数字签名。某软件或硬件最近有所更改,可能安装了签名错误或损毁的文件,或者安装的文件可能是来路不明的恶意软件。
应该就是\Windows\System32\drivers\tcpipreg.sys驱动签名有问题。
sigcheck64 -s -i -e C:\Windows\System32\drivers\tcpipreg.sys >tcpipreg.txt
提示No matching files were found.
应该还是需要破解drvinst.exe?这个\Windows\System32\drivers\tcpipreg.sys的驱动签名怎么搞?
 

看了下这个tcpipreg服务,注册表里面的服务键值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpipreg,对应的文件是\windows\system32\drivers\tcpipreg.sys。

换了个思路,看了下ljycslg的PE里面,没有这个tcpipreg.sys,也没有tcpipreg服务。

尝试自己写了个补丁删除tcpipreg.sys和tcpipreg服务,然后用wimbuilder2构建PE,

del /f /q %X%\Windows\System32\drivers\tcpipreg.sys
reg delete "HKLM\tmp_SYSTEM\CurrentControlSet\Services\tcpipreg" /f

文件删除了,注册表可能是挂载的位置不对,删除失败。

用tcipireg为关键字,用filelocator搜索了下wimbuilder2目录,找到了这些:

H:\WimBuilder2-Full20191010\Projects\WIN10XPE\01-Components\02-Network\main.bat

20行

@\Windows\System32\drivers\
ipfltdrv.sys,lltdio.sys,mrxsmb10.sys,rspndr.sys,tcpipreg.sys,vwififlt.sys,WdiWiFi.sys

200行

call RegCopy HKLM\System\ControlSet001\Services\tcpipreg

删除20行里面的tcpipreg.sys,注释掉200行,用wimbuilder2构建PE,成功启动penetwork!

似乎有点副作用,就是右下角系统托盘区的网络图标有个红叉,网络是连接的啊,怎么没有扇形了?

小结:

1、win10由于驱动签名验证,tcpipreg.sys是从install.wim里面提取的,没有cat驱动签名,导致windows无法验证此文件的数字签名,不知道倒底是什么cat文件,文件太多了,sigcheck没有检查出来。

2、绕路解决的方法是彻底删除tcpipreg.sys的文件和注册表。PE.ISO体积基本没有增加,只增加了penetwork本身的1.5MB。似乎有点副作用,就是右下角系统托盘区的网络图标有个红叉,网络是连接的啊,怎么没有扇形了?另外其他版本的PE构建暂时没有测试,比如17763等,晚点再看看。

3、penetwork源代码有32115行,用au3写这个的人真是了不起!文件依赖如果不要依赖这个tcpipreg.sys就好了。

解决PEnetwork启动的时候提示"An error occured while starting the "TCP/IP Registry Compatibility" Service (2)!"程序将立即退出的问题的更多相关文章

  1. MyEclipse+Tomcat 启动时出现A configuration error occured during startup错误的解决方法

    MyEclipse+Tomcat 启动时出现A configuration error occured during startup错误的解决方法 分类: javaweb2013-06-03 14:4 ...

  2. Error: Error occured while starting App. Original error: Activity used to start app doesn't exist or cannot be launched! Make sure it exists and is a launchable activity

    Error: Error occured while starting App. Original error: Activity used to start app doesn't exist or ...

  3. 启动eclipse时候提示错误Error:Could not create the Java Virtual Machine. Error:A Fatal exception has occurred,Program will exit.

    我的是neon3版本 解决办法是: 首先把这两个选项勾选,才能看到eclipse.ini完整的文件名.然后用记事本等工具打开编辑. 新版的里面原本是这样: -startup plugins/org.e ...

  4. appnium启动报错Encountered internal error running command: Error: Error occured while starting App. Original error: Permission to start activity denied.

    说明写错了activity 首先查看一下activity,使用命令 打开被测app,输入命令adb shell dumpsys window | findstr mCurrentFocus 看似这个a ...

  5. SpringBoot启动项目时提示:Error:java: 读取***.jar时出错;

    场景 在IDEA中新建SpringBoot项目后,修改了默认的Maven仓库和配置文件,然后在启动项目时提示: Error:java: 读取\org\assertj\assertj-core\3.11 ...

  6. SpringBoot启动项目时提示:Error:(3, 32) java: 程序包org.springframework.boot不存在

    场景 在IDEA中新建SpringBoot项目,后启动项目时提示: Error:(3, 32) java: 程序包org.springframework.boot不存在 实现 将pom.xml中par ...

  7. An error occurred while starting the application.

    一..net core 发布后的站点启动报错如下 An error occurred while starting the application. .NET Core 4.6.26328.01 X6 ...

  8. 解决软件启动报error while loading shared libraries: libgd.so.2: cannot open shared object错误

    解决软件启动报error while loading shared libraries: libgd.so.2: cannot open shared object错误 今天安装启动nginx的时候报 ...

  9. idea 提示:ERROR util.Shell: Failed to locate the winutils binary in the hadoop binary path java.io.IOException解决方法

    Windows系统中的IDEA链接Linux里面的Hadoop的api时出现的问题 提示:ERROR util.Shell: Failed to locate the winutils binary ...

随机推荐

  1. js生成条形码

    生成条形码 <body> <div> <img id="ma"/> </div> </body> </html&g ...

  2. ImportError: cannot import name 'render_to_response' 解决方法

    前几天 Django 官方推出了 3.0 框架,项目在 K8S 内部署启动的时候,报了这个错:ImportError: cannot import name 'render_to_response' ...

  3. var和let区别简述

     因为习惯用var声明变量,以至于ES6出了let来替代var,我依然继续用var,直到后来慢慢了解let之后,开始尝试使用    不同点:    ①:var属于ES5规范,let属于ES6规范 ②: ...

  4. python threading ThreadPoolExecutor

    线程池,为什么要使用线程池:1. 线程中可以获取某一个线程的状态或者某一个任务的状态,以及返回值2. 当一个线程完成的时候我们主线程能立即知道3. futures可以让多线程和多进程编码接口一致 获取 ...

  5. 程序基于InstallShield2013LimitedEdition的安装和部署

    在VS2012之前,我们做安装包一般都是使用VS自带的安装包制作工具来创建安装包的,VS2012.VS2013以后,微软把这个去掉,集成使用了InstallShield进行安装包的制作了,虽然思路差不 ...

  6. My time is limited

    Your time is limited, so don't waste it living someone else's life. Don't be trapped by dogma - whic ...

  7. .NET基础知识(01)-值类型与引用类型

    常见面试题目: 1. 值类型和引用类型的区别? 2. 结构和类的区别? 3. delegate是引用类型还是值类型?enum.int[]和string呢? 4. 堆和栈的区别? 5. 什么情况下会在堆 ...

  8. pycharm工具设置py模板

    直接上截图把,更加明确清晰 (a)shebang行 #!/usr/bin/python3 (b)预定义的变量要扩展为格式为$ {<variable_name>}的相应值. 可用的预定义文件 ...

  9. PC端页面适应不同的分辨率的方法

    原文链接:https://www.jianshu.com/p/4850a7b22228 一.根据不同的分辨率,加载不同的CSS样式文件 这个方法的思路是,分别针对800.1280.1440.1600. ...

  10. MQ选型对比ActiveMQ,RabbitMQ,RocketMQ,Kafka 消息队列框架选哪个?

    最近研究消息队列,发现好几个框架,搜罗一下进行对比,说一下选型说明: 1)中小型软件公司,建议选RabbitMQ.一方面,erlang语言天生具备高并发的特性,而且他的管理界面用起来十分方便.不考虑r ...