«AutoCAD» — двух- и трёхмерная система автоматизированного проектирования и черчения, разработанная компанией «Autodesk». В данном примере рассмотрен поиск и запуск программы «AutoCAD» ассоциированной по умолчанию с форматом «*.dwg».
Ниже представлен листинг метода поиска в реестре пути к исполняемому файлу программы «AutoCAD», ассоциированной по умолчанию с форматом «*.dwg».
Для консольного приложения:
Ниже представлен листинг метода поиска в реестре пути к исполняемому файлу программы «AutoCAD», ассоциированной по умолчанию с форматом «*.dwg».
public static string GetAutoCADLaunchPath() { Microsoft.Win32.RegistryKey RegistryKeyRoot = Microsoft.Win32.Registry.CurrentUser; if (RegistryKeyRoot != null) { Microsoft.Win32.RegistryKey RegistryKeySoftware = RegistryKeyRoot.OpenSubKey("Software"); if (RegistryKeySoftware != null) { Microsoft.Win32.RegistryKey RegistryKeyAutodesk = RegistryKeySoftware.OpenSubKey("Autodesk"); if (RegistryKeyAutodesk != null) { Microsoft.Win32.RegistryKey RegistryKeyDWGCommon = RegistryKeyAutodesk.OpenSubKey("DWGCommon"); if (RegistryKeyDWGCommon != null) { Microsoft.Win32.RegistryKey RegistryKeyApps = RegistryKeyDWGCommon.OpenSubKey("shellex").OpenSubKey("Apps"); if (RegistryKeyApps != null) { string GUID = RegistryKeyApps.GetValue("").ToString(); string Path = RegistryKeyApps.OpenSubKey(GUID).GetValue("OpenLaunch").ToString(); Path = Path.Replace("\"%1\"", ""); Path = Path.Replace("\"", ""); Path = Path.Trim(); return Path; } } } } } return ""; }Пример вызова данного метода представлен ниже.
Для консольного приложения:
string AutoCAD = GetAutoCADLaunchPath(); if (AutoCAD.Length != null || AutoCAD.Length > 0) { Console.WriteLine(AutoCAD); System.Diagnostics.Process.Start(AutoCAD); Console.ReadLine(); }Для Windows Form:
string AutoCAD = GetAutoCADLaunchPath(); if (AutoCAD.Length != null || AutoCAD.Length > 0) { System.Diagnostics.Process.Start(AutoCAD); }
Комментариев нет:
Отправить комментарий
Большая просьба, не писать в комментариях всякую ерунду не по теме!