Переменная среды Windows 7 для System32 или SysWOW64

Есть ли переменная среды для прямого доступа к папке System32 или SysWOW64 соответственно в 32-битной или 64-битной Windows 7?

Я знаю обходной путь с использованием %WINDIR%\System32, который у меня не работает.

Мне нужно перекомпилировать EXE-файл, который ссылается на какой-то OCX, который должен быть зарегистрирован в папке System32. Проблема, с которой я столкнулся, заключается в том, что я должен установить его в 64-битной системе, где OCX зарегистрирован в папке SysWOW64 и не зарегистрирован в папке System32.

Что мне попробовать? Спасибо за вашу помощь!

Редактировать:

Я понял, что в решении есть ссылка на dll, которая ссылается на flash10h.ocx. Для этого flash10h.ocx должен быть зарегистрирован. Я смог зарегистрировать его в папке SysWOW64, но не в System32. В моей системе уже установлен flash player v11.xx. Это не сработает?

Пожалуйста помоги!


person Vivek Jain    schedule 09.10.2013    source источник


Ответы (1)


Следующий метод извлечет путь к 32-разрядному системному каталогу и, при необходимости, поместит его в переменную среды SYSDIR32.

public static String Get32BitSystemDirectory (Boolean placeInEnvironmentVariable = true)
{
   String sysDir = "";
   if (Environment.Is64BitOperatingSystem) sysDir = Environment.ExpandEnvironmentVariables("%windir%\\SysWOW64");
   else sysDir = Environment.ExpandEnvironmentVariables("%windir%\\System32");
   if (placeInEnvironmentVariable) Environment.SetEnvironmentVariable("SYSDIR32", sysDir, EnvironmentVariableTarget.User);
   return sysDir;
}
person Cheese Lover    schedule 05.09.2015