2

Хорошо, я сейчас в мире боли.Как исправить VS2008 и VS2010 dev envts на Win7 x64

Мы разрабатывали VS2008 (VB.NET, в основном WinForms, а также службы ASP.NET и Windows) на Win7 x64, с особыми требованиями (которые мы еще не можем избавиться), чтобы ориентироваться на x86 и рамки 3.5.

Мы недавно обновились до VS2010, и довольно скоро обвалили this ResGen.exe incompatibility issue. В принципе, мы не можем скомпилировать приложение WinForms вообще с VS2010. Ни один из обходных решений, предложенных Microsoft или другими, не работал ни для меня, ни для другого члена моей команды.

Итак, мы попытались вернуться к VS2008, используя описанную технологию here (т. Е. Взломать файл решения), а также создав новое решение VS2008 и добавив к нему проекты. Это казалось прекрасным на короткое время, но теперь мы обнаруживаем, что при отладке приложения необработанные исключения не попадают в среду IDE, что делает разработку практически невозможной.

Совершенно новое тестовое приложение, созданное с помощью VS2008 (скомпилировано для x86 и .NET 3.5), не демонстрирует эту ошибку для исключения исключений.

На данный момент мне пришлось прибегать к разработке на VS2010 на виртуальной машине Win7 (32 бит) внутри основного компьютера, и это действительно работает ... но это медленный!

Любые идеи для выхода из этого будут с благодарностью оценены!

Update:

Хорошо, так что это не является реальным решением, но как временное решение, это не полная катастрофа ...

Благодаря Ною для его комментария, что побудило меня исследовать различные решения для виртуализации. Я теперь обнаружил (возможно, последний человек здесь!) VirtualBox. Мало того, что он довольно немного сложен, чем VMWare Player и различные воплощения Microsoft/Windows Virtual PC, он также имеет Бесшовный режим, где приложения, запущенные на виртуальной машине, отображаются как отдельные окна в хосте. Итак, теперь у меня есть гостевая консоль x86 с VS2010, компиляция для x86 и Framework 3.5. Поскольку в гостевой системе нет конфликта x64/x86, проблема с Resgen.exe отсутствует, и мой dev envt просто появляется как окно на моем рабочем столе. Это все еще медленнее, чем запустить его изначально, но я могу жить с ним на данный момент.

бы еще оценить любые фактические решения (или, если это невозможно, исправление от Microsoft !!)

+0

Это не исправить проблему, но есть несколько вещей, которые вы можете попытаться сделать VS2010 быстрее на виртуальной машине. В «Инструменты-> Параметры-> Среда-> Общие» убедитесь, что «Включить богатый клиентский визуальный опыт» и «Использовать ускорение аппаратной графики, если они доступны» отключены. –

+0

@Noah: Спасибо - см. Мое обновление. – ChrisA

ответ

0

Ну я сдался.

VirtualBox был Ok на некоторое время, но медленность VM была раздражающей, и навсегда, чтобы управлять перемещением вещи между хостом и гостем, сводило меня с ума.

Итак, я перестроил всю машину с Windows 7 x86.

Полностью отвратительно от очевидного безразличия Microsoft к проблеме, но я думаю, что я не первый, кто это чувствует.

0

Вы можете просто сделать сделать Resgen.exe 32-битную по: 1. Cd «% ProgramFiles (x86)% \ Microsoft SDKs \ Windows \ v7.0A \ Bin» 2. CorFlags/32Bit +/Force ResGen. exe

Сохраните предыдущий файл resgen.exe перед этим изменением.

После этого изменения вы должны изменить все свои проекты, чтобы сказать ResGen работать в режиме 32bitmanaged

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

  2. ИЛИ При работе MSBuild.exe напрямую, минуя его, используя глобальный переключатель свойства: '/ р: ResGenToolArchitecture = Managed32Bit'

Решение размещен на http://tune-up-pc.com/blog/?p=10790

+0

Ну да. Двое из нас (независимо) приступили к реализации этого обходного пути, который документирован в ряде мест. Кажется, это не работало ни для одного из нас. Я не исключаю, что мы сделали что-то неправильно, но, как вы видите в моем (не) ответе, я вернулся к Win7 x86 сейчас. Спасибо, хотя. Я бы очень хотел вернуться к x64 когда-нибудь, так что, возможно, я пойду на обходной путь с виртуальной машиной. – ChrisA

+0

Ну .. я столкнулся с той же проблемой, и это решение работает для меня с тех пор – ssingh3

Смежные вопросы