为当前用户快速恢复 AutoCAD
如果程序在当前用户配置文件中首次启动,则Windows会安装此程序的缺失组件。有时AutoCAD 2009会破坏自己的菜单文件和一些设置。在这种情况下,我通过删除HKCU中的注册表项(HKEY_CURRENT_USER\Software\欧特克\AutoCAD\R
.
\
:
)及其当前用户配置文件中的文件夹(RoamableRootFolder, LocalRootFolder)以编程方式恢复应用程序状态。现在我要安装必要的组件(它们在HKCU和文件夹中重新创建注册表项)。为此,我以编程方式启动应用程序。但是我想在应用程序启动期间完成安装必要的组件时杀死该过程(因为AutoCAD启动需要很多时间)。
如果我杀死acad.exe进程,那么安装的组件也会被杀死。我不需要这样的行为。
是否可以定义(以编程方式,我使用C#)这些组件的安装完成的时刻?或者可能可以定义AutoCAD的某些组件仍未安装在当前用户配置文件上,然后强制启动这些组件安装而无需“acad.exe”启动(我不知道如何做到)。
**** Hidden Message ***** 不确定这可以作为插件完成,因为可能不会引发所需的事件,但是您可以通过WMI监视注册表,并在事后采取补充步骤:
https://code.msdn.microsoft.com/windowsapps/CSMonitorRegistryChange-d297cdf0
干杯 我解决了我的问题:
,而(true){
RegistryKey unpr=Registry.CurrentUser
OpenSubKey(cu_app.InstalledProduct)
.SubkeyName+
@“\Profiles\
”,
假)
如果(unpr!=null){
使用(unpr){
unpr.Close()
}
中断
}
}
/*以防我们等待半秒钟-
*足够了。代码成功运行
*也不需要等待。*/
线程睡眠(500)
/*现在已安装组件*/
proc.Kill()
proc.Close()
页:
[1]