Вопрос

Хорошо, я в мире боли в данный момент.

Мы развивались с 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-битном режиме

  1. Добавление Managed32Bit в свойственную группу в файле проекта любого проекта, который генерирует целевые ресурсы ресурсов .NET 3.5 - поскольку уловка Corflags влияет на укус Resgen.exe на системном уровне, имущество должно быть установлено для всех затронутых проектов.

  2. Или при запуске msbuild.exe напрямую, передавая его с помощью глобального выключателя свойств: '/ p: resgencentoolarchitecture = Managed32bit

Решение опубликовано в http://tune-up-pc.com/blog/?p=10790

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top