Как исправить VS2008 и VS2010 DEV О зависимости от Win7 X64
-
30-09-2019 - |
Вопрос
Хорошо, я в мире боли в данный момент.
Мы развивались с VS2008 (VB.NET, в основном WinForms, также ASP.NET и Windows Services) на Win7 X64 с конкретными требованиями (которые мы не можем еще не избавиться от него), чтобы цель X86 и Framework 3.5.
Мы недавно обновили до VS2010, и вполне скоро упали Эта проблема несовместимости Resgen.exe. Отказ По сути, мы не можем компилировать приложение WinForms вообще с VS2010. Ни один из разрабатываний, предложенных Microsoft или другими, не работал в себе, либо на другой член моей команды.
Поэтому мы пытались вернуться к VS2008, используя описанную технику здесь (т.е. взломать файл решения), а также путем создания совершенно нового решения VS2008 и добавлением к нему проекты. Это казалось нормально в течение короткого времени, но теперь мы обнаруживаем, что при отладке приложений необработанные исключения не попадают в IDE, что делает развитие практически невозможным.
Совершенно новое тестовое приложение, созданное с VS2008 (скомпилированным для X86 и .NET 3.5), не проявляет этого неспособности ловить исключения.
Мне пришлось прибегать к разработке на VS2010 на VIN7 (32-разрядной) виртуальной машины внутри основного компьютера, и он работает ... Но это Slowwwwwwwwww!
Любые идеи для выхода из этого были бы благодарны благодарны!
Обновлять:
Хорошо, так что это не фактическое решение, а как обходной путь, это не полная катастрофа ...
Спасибо Ною за его комментарий, который побудил меня исследовать различные виртуационные решения вокруг. Теперь я обнаружил (вероятно, последний человек здесь!) Виртуальная коробка. Отказ Это не только немного слабое, чем VMware Player и различные воплощения Microsoft / Windows Virtual PC, он также имеет Бесшовный режим, где приложения, работающие на VM, появляются как отдельные окна на хосте. Таким образом, у меня сейчас есть гостеприим для гостей X86 VS2010, составление X86 и Framework 3.5. Поскольку в госте нет конфликта X64 / X86. Это все еще медленнее, чем бегать, но я могу жить с ним сейчас.
Все равно оценит любые фактические решения (или, не в состоянии, исправить от Microsoft !!)
Решение
Ну я сдался.
VirtualBox было в порядке на некоторое время, но медлительность виртуальной машины раздражала, и навсегда навсегда управлять движущимисями вещами между хостом и гостям ездила с ума.
Итак, я перестроил всю машину с Windows 7 x86.
Полностью отвратительна кажущимся безразличием Microsoft к проблеме, но я думаю, что я не первый, кто чувствует это.
Другие советы
Вы можете просто сделать Make Resgen.exe 32-битный от: 1. CD "% Programfiles (x86)% Microsoft Sdks Windows v7.0a bin" 2. Corflags / 32bit + / force Resgen.exe
Сохраните предыдущий Resgen.exe до этого изменения.
После этого изменения вам нужно будет изменить все ваши проекты, чтобы сообщить Resgen для запуска в 32-битном режиме
Добавление Managed32Bit в свойственную группу в файле проекта любого проекта, который генерирует целевые ресурсы ресурсов .NET 3.5 - поскольку уловка Corflags влияет на укус Resgen.exe на системном уровне, имущество должно быть установлено для всех затронутых проектов.
Или при запуске msbuild.exe напрямую, передавая его с помощью глобального выключателя свойств: '/ p: resgencentoolarchitecture = Managed32bit
Решение опубликовано в http://tune-up-pc.com/blog/?p=10790