Я написал C # Windows Form Application и проект развертывания для него. Проект развертывания имеет настраиваемое действие.
Я написал Приложение на компьютере с Windows XP. Когда я тестировал его на компьютере с Windows 7, я заметил, что основные части пользовательского интерфейса были «затемнены». Я обнаружил, что это можно исправить, закодировав приложение в «принудительном режиме классического интерфейса» независимо от того, в какой операционной системе оно работает. Я сделал это, сделав содержимое Main () в уже существующей программе .cs следующим образом:
static void Main()
{
//Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
Это решает проблему для основной формы. (Кроме того, проект развертывания правильно отображается в Windows 7 без изменений, аналогичных этой части кода.)
Есть одно исключение: мне пришлось написать пользовательское действие для установщика, которое отображает форму. (Пользователь взаимодействует и нажимает «Далее», как если бы он был частью первоначального установщика.)
Моя проблема в том, что в проекте развертывания или в настраиваемом действии нет файла Main () или Program.cs (который вы создаете как отдельный класс в том же проекте). Следовательно, я не знаю, куда бы я поместил линии, чтобы «сообщить» настраиваемому действию для рендеринга в режиме полностью совместимого отображения. Пространство имен приложения (которое содержит метод, который мне нужно использовать) вообще не доступно в моем пользовательском действии.
Буду признателен за любые указатели - я уверен, что это легко исправить, но я не могу его найти!
Спасибо,
RS