从找不到iTv\iTvApp.exe,到Duilib加载资源文件失败的通用解法

下载安装软件时,点了高速下载,被捆绑安装了i搜影,手动删除文件后,开机时可能会出现:

Windows找不到文件’C:\Program Files(x86)\iTv\iTvApp.exe’。请确定文件名是否正确后,再试一次。

同时弹出“Duilib加载资源文件失败”提示,一点击确定就会黑屏或者不显示桌面图标。
在这里插入图片描述
已知iTvApp.exe这样的文件名,搜索下可以找到是i搜影软件的,覆盖安装官方版后,卸载软件重启即可恢复正常。
在这里插入图片描述
在这里插入图片描述
或者导入以下reg内容,重启后删除C:\Program Files(x86)\iTv。

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{19E0947A-0C57-4584-BA08-C1ECADD9E3FE}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{BB4E693D-7B82-4005-9F87-56971CCE8D38}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{B7B232F4-627B-4C8B-AF3C-66B758220E38}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{19E0947A-0C57-4584-BA08-C1ECADD9E3FE}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\Interface\{BB4E693D-7B82-4005-9F87-56971CCE8D38}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Approved]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\      TvNoUser]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\iTv]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DownloadManager]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\Approved]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\ShellIconOverlayIdentifiers\      TvNoUser]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\iTv]

或者打开iTv目录,可以看到残留文件iTvShellExt64.dll和TxUILib64.dll,猜测跟这有关。
按住shift右击空白处,在此处打开命令窗口或powershell(需要管理员身份)。
执行以下命令,重启桌面进程后恢复正常:

regsvr32 /u iTvShellExt64.dll
taskkill /f /im explorer.exe
explorer.exe

输入完/u 后,可以按tab自动补全文件名,省事。

在这里插入图片描述

打开命令窗口不是管理员身份的,可以开始菜单搜索cmd右击以管理员身份运行。或右击开始按钮,管理员Powershell(win10)。
执行以下命令:

cd  c:\*x86*\iTv

切换到iTv目录后,再参考上面命令执行。

以上提到的解决方法建立在已知跟iTv有关。如果不知道是什么导致的,有什么通用的解决方法?

可以下载Process Explorer软件,拖动望远镜右侧图标到弹窗上方定位具体进程。
在这里插入图片描述
定位到的进程是explorer.exe,右击属性,切换到线程选项卡,按CPU使用倒序排列。
在这里插入图片描述
然后不停的点错误弹窗,可以从上图看到使用率第一的是iTvShellExt64.dll线程,可以选中后点结束,看弹窗是否消失了(测试是消失了)。

根据网上搜索,或查看dll文件属性,可以判断相关软件,重新安装相关软件后卸载重启即可。
在这里插入图片描述
或者参考上面输入命令的方法解决。又或者注册表搜索dll文件,导出备份后,删除相关注册表项,推荐使用Registry Workshop搜索。

上面提到的Process Explorer定位弹窗,查看进程属性,切换到线程CPU后点击弹窗提高CPU使用率来判断的方法,可以用于解决很多类似的问题,有兴趣的自己测试。

补充:
已知问题后,反过来分析本例中“Duilib加载资源文件失败”的原因。

可以通过逐一删除iTv文件判断,找出导致这个错误的是软件的skin文件夹被删除了(符合资源的意思)。

或者用Process Monitor来判断,添加过滤后轻松检测出错误原因。
在这里插入图片描述
duilib,第三方开源DirectUI界面库。第三方软件常用,系统程序不太可能用。
删除了duilib的资源文件,如xml以及图片等,就会出现duilib加载资源文件失败的问题。
如果点击弹窗的确定,桌面图标消失,说明资源管理器加载项有用duilib开发的动态连接库。

发布了34 篇原创文章 · 获赞 29 · 访问量 10万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览