Мое требование - прочитать конкретный раздел реестра, связанный с читателем Adobe Acrobat, и принять решение на основе значения этого ключа.Обновление раздела реестра Adobe Acrobat Reader постоянно меняется
Хотя это кажется простым, так как мне нужно запросить ключ, используя класс реестра (для .NET) , а затем принять решение на основе значения.
Однако проблема, с которой я сталкиваюсь сейчас, заключается в том, что местоположение раздела реестра постоянно меняется почти в каждой новой версии Adobe Acrobat Reader.
Все, о чем я могу думать сейчас, это иметь корпус коммутатора для обработки всех различных версий Adobe в моем коде.
RegistryKey adobe = Registry.LocalMachine.OpenSubKey("Software").OpenSubKey("Adobe");
if (adobe != null)
{
RegistryKey acroRead = adobe.OpenSubKey("Acrobat Reader");
if (acroRead != null)
{
string[] acroReadVersions = acroRead.GetSubKeyNames();
Console.WriteLine("The following version(s) of Acrobat Reader are installed: ");
foreach (string versionNumber in acroReadVersions)
{
switch(versionNumber)
{
case 1.x = //do something;
//break;
case 2.x = //do something;
//break;
case 6.x = //do something;
//break;
case 9.x = //do something;
//break;
}
}
}
}
Но некоторые из них не удовлетворены этим подходом. Каждый раз, когда Adobe выпускает новую версию, я должен убедиться, что мне придется обрабатывать ее по-разному. Любые предложения для лучшего подхода.
Благодаря