原总结调试排错troubleshootteklaprocess monitorsysinternals

缘起

最近同事使用.tsep安装Tekla插件的时候,Tekla提示该插件已经存在了,需要卸载后再安装。同事找了半天,没找到怎么卸载,我也没找到。于是决定弄清楚Tekla是 如何判断一个插件安装与否的。 想必看过我其它排错文章的小伙伴已经猜到了,我们今天文章中的主角依然是process monitor。好了,话不多说,好戏马上开始。

调查

在开始调查之前,我们可以先思考下,Tekla是如何判断一个插件安装与否的?

我能想到如下三种可能:

  • 通过读取注册表来判断。
  • 通过配置文件来判断。
  • 通过加载特定目录下符合条件(e.g. 导出某些约定好的接口)的文件来判断。

这三种情况,我们都可以通过process monitor监控到。

捕获Tekla操作记录

打开process monitor,开始监视。然后双击.tsep进行安装,当弹出错误对话框的时候,关闭process monitor监视。

过滤我们关心的记录

process monitor会捕获超级多的事件。如果不能进行有效的过滤,想找到我们关心的事件,无异于大海捞针。但是我们要根据什么条件来过滤呢?

首先,我们需要根据进程名进行过滤,但是我们怎么知道安装程序对应的进程名呢? process monitorInclude Process From Window功能可以很方便的帮我们根据窗口找到其对应的进程。按住该按钮(大写字母A右侧,像靶子的那个按钮),拖动到目标窗体,松开即可。如下图:

除了根据进程名过滤,我们还需要根据其它条件进一步过滤。我们的过滤条件大概是这样的:

  • Process Name只关心TsepFileDispatcher.exe
  • Event Class只关心RegistryFile System,不关心NetworkProcess and Thread
  • Operation排除Write相关事件,只关心Read相关事件即可。
  • Path排除以.dll.exe结尾的路径,并且排除windows.net相关的路径。
  • Result只关心SUCCESS类型的。

下图是我们刚刚设置的过滤规则(为了突出重点,我删掉了process monitor自带的过滤规则)。

经过以上过滤,剩下的事件就很少了,我们可以分别查看RegistryFile System的事件。我们先看File System事件。


interested-readfile-event

当我看到

C:\ProgramData\Tekla Structures Learning\2018\Extensions\Installed\{叠合板模板}{1.0}{73703402-ee5b-4058-bf6a-ad1077481245}\Manifest.xml

这条记录的时候,我猜测Tekla会把插件装在子目录Extensions\Installed下,我要安装的插件标识符是叠合板模板,版本是{1.0},对应的GUID{73703402-ee5b-4058-bf6a-ad1077481245}

{% note info %}

说明: 为什么不看Registry事件呢?因为我找了一圈,没有很容易的在里面找到我关心的事件。

{% endnote %}

大功告成

至此,我们已经找到了我们关心的事件。使用Everything在本地搜索叠合板模板,删除所有搜到的记录。再次双击.tsep文件进行安装,顺利完成。

[原]排错实战——解决Tekla通过.tsep安装插件失败的问题的更多相关文章

  1. 解决mac下atom安装插件失败问题

    activate-power-mode的超炫编辑效果打动了我,花时间安装了atom,之后在package,install里面找到了这个插件,但是安装失败,如下图所示: gyp info it work ...

  2. 解决sublime text无法安装插件问题

    解决sublime text无法安装插件问题最近在sublime text3中使用命令ctrl+shift+p命令安装插件发现不能安装了,一会儿报错 这个错误表示没有可用的安装包,经过一番探索发现是配 ...

  3. Docker 安装 Jenkins , 并解决初始安装插件失败

    安装 Jenkins 后,初始化下载插件总是失败,导致安装不成功,重试好几次都是卡在安装插件那. 这里记录下 Docker 下怎么安装 Jenkins ,并解决初始安装插件失败问题. 安装插件失败,其 ...

  4. atom安装插件失败 latex

    用atom写latex 链接 http://www.cnblogs.com/schaepher/p/5934184.html 但在gui下安装插件失败 按照以下步骤解决了 安装gitbash cd . ...

  5. Sublime Text 2 windows8安装插件失败解决

    事件是这样的: 1.安装Package Control组件后, 2.调出Install Package选项安装插件,状态栏显示成功, 3.但打开Packages目录也看不到,Sublime插件管理也没 ...

  6. Android Studio 2.3 解决小米手机调试安装apk失败问题

    在开发者选项里面,拉到底,把miui优化选项去掉就好了. 参考资料 [问题反馈] Android Studio 2.3 在红米note3手机中 调试安装Apk失败

  7. sublime Text3安装及配置与解决安装插件失败

    1.下载sublime Text3的官网:https://www.sublimetext.com/32.安装Package Control   下载Package Contoral地址: 链接:htt ...

  8. 解决IDEA的plugins安装插件很慢、不成功问题

    1.修改hosts文件 路径:C:\Windows\System32\drivers\etc 52.84.224.36 plugins.jetbrains.com 重启IDEA,再次安装插件时,芜湖~ ...

  9. eclipse问题解决(link方式安装插件失败)

    使用 link 方式,离线安装 eclipse 插件时,经常失败. 一.常见的失败情况 link方式配好后,eclipse 启动,没有弹出任何信息. 查看当前工作空间——.metadata——.log ...

随机推荐

  1. Centos7.4 Storm2.0.0 + Zookeeper3.5.5 高可用集群搭建

    想了下还是把kafka集群和storm集群分开比较好 集群规划: Nimbus Supervisor storm01 √ √ storm02 √(备份) √ storm03 √ 准备工作 老样子复制三 ...

  2. opencv运动物体识别

    import cv2 import time import datetime import os def mkdir(path): folder = os.path.exists(path) if n ...

  3. weex框架

    weex优势: (1)支持ES6规范 (2)性能优异,开发简介标准,提及小巧. (3)跨平台 weex调试工具:weexplayground weex环境搭建: (1)安装 node.js.npm ( ...

  4. 启动mysql遇到问题Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    在mysql的启动过程中有时会遇到下述错误 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 请问mys ...

  5. C++中substr()详解

    #include<string> #include<iostream> using namespace std; int main() { string s("123 ...

  6. Window Nginx安装

    1.下载Nginx 下载地址:http://nginx.org/en/download.html 我这里下载的版本是: nginx/Windows-1.12.2 2.解压Nginx 把下载下来的zip ...

  7. kube-apiserver常用配置项

    KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"                                        ...

  8. Centos下nginx安装

    安装很简单,这里记录只是为了记下下载地址: A.[root@localhost soft]# wget http://nginx.org/download/nginx-1.4.2.tar.gz B.[ ...

  9. sychronized和lock和区别

    syschronized和lock的区别 synchronized的锁可重入.不可中断.非公平,而Lock锁可重入.可中断.可公平.绑定多个Condition.(两者皆可重入)synchronized ...

  10. rabbitmq安装及简单demo练习

    参考:https://my.oschina.net/loveorange/blog/3026473 安装参考链接: 1. 下载自己需要的rabbitmq_server(http://www.rabbi ...