VB.NET如何获取其他应用程序的安装路径?以及如何判断一个应用程序是否已经打开?
1、我是个初学者,想用VB.NET的一个按钮打开autocad软件,并打开固定目录下的一个文件,但是很多人装这个软件的目录会不同,用process.start可以打开固定...
1、我是个初学者,想用VB.NET的一个按钮打开autocad软件,并打开固定目录下的一个文件,但是很多人装这个软件的目录会不同,用process.start可以打开固定目录下的cad软件,但是应用性不强。
2、另外我用process.start语句打开一次cad软件后,根据我选择的不同文件名打开文件,当选择另外一个文件名再次点击按钮时,又会打开一次软件,而不像正常使用时一样,软件只打开一次,不同的文件在不同的窗口中打开。
希望老师可以给段源程序,可以自动获取到cad软件的安装目录,然后打开,并且软件只启动一次,不同的文件在不同的窗口打开,万分感谢。 展开
2、另外我用process.start语句打开一次cad软件后,根据我选择的不同文件名打开文件,当选择另外一个文件名再次点击按钮时,又会打开一次软件,而不像正常使用时一样,软件只打开一次,不同的文件在不同的窗口中打开。
希望老师可以给段源程序,可以自动获取到cad软件的安装目录,然后打开,并且软件只启动一次,不同的文件在不同的窗口打开,万分感谢。 展开
2个回答
展开全部
你这个问题分着问兴许能快点得到答案。
我只知道一点,软件已打开,可以根据进程信息判断
Private chm_process As Process
If IsNothing(chm_process) OrElse chm_process.HasExited Then
chm_process = New Process
chm_process.StartInfo.FileName = Application.StartupPath + "\软件使用说明书.CHM"
chm_process.Start()
Else
WinAPI.ShowWindowEx(chm_process.MainWindowHandle, WinAPI.nCmdShow.SW_RESTORE)
End If
让cad加载文件得找API,不知道有没有
我只知道一点,软件已打开,可以根据进程信息判断
Private chm_process As Process
If IsNothing(chm_process) OrElse chm_process.HasExited Then
chm_process = New Process
chm_process.StartInfo.FileName = Application.StartupPath + "\软件使用说明书.CHM"
chm_process.Start()
Else
WinAPI.ShowWindowEx(chm_process.MainWindowHandle, WinAPI.nCmdShow.SW_RESTORE)
End If
让cad加载文件得找API,不知道有没有
追问
这个或许实现起来有些复杂,也许得找相关句柄,这就专业了,我的思路是先判断软件有没有运行,没有的话就运行软件,打开相关文件,已经运行了的话就在另一个窗口打开文件,谢谢你的帮忙,回头我试一下;另外请问获取一个文件的路径(比如acad.exe)有没有相关的指令语句,谢谢
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
从注册表中找安装目录
网上查一下cad的文档,肯定有一次命令行打开多个的方法,你先在cmd里测试,虽然没试过但很有可能是cad.exe file1 file2这样的
更多追问追答
追问
谢谢,也许我表达的不够清楚,我想通过VB.NET语句,获取一个文件的绝对路径(比如acad.exe),这样无论用户把软件安装在什么位置我都可以打开了,谢谢
追答
每个软件安装后都会在注册表留下痕迹,路径也很容易找到。vb.net访问搜索注册表你会吗?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询