Почему окно моего приложения не появляется при запуске? - PullRequest
1 голос
/ 16 июня 2009

Случайно и без предупреждения (или очевидной причины) VS 2008 решил действовать так, как будто отладка работает так же, как и всегда, за исключением того факта, что окно моего приложения никогда не появляется на экране. Я запускал свое приложение из VS все утро, и я не вижу, что я мог бы изменить, чтобы мое окно больше не отображалось к полудню. Обычно, если есть ошибка в XAML или где-то проблема с моим кодом, VS сообщит мне с фатальной ошибкой исключения и автоматически закроет сеанс отладки. Но теперь VS, похоже, не знает о каких-либо проблемах, так как я вижу, что мое приложение работает в окне вывода.

Я скопировал и вставил всю коробку вывода в это сообщение. Вся информация о моем запущенном приложении находится здесь.

Обратите внимание на знакомую строку внизу: «Программа« [328] UI.vshost.exe: Managed »завершилась с кодом 0 (0x0)». Эта строка не появляется, пока я вручную не закрою сеанс отладки, нажав кнопка «стоп». До этого времени приложение работает без каких-либо серьезных ошибок или проблем.

Я вижу несколько возможных красных флагов: во-первых, исключение первого шанса в System.Deployment.dll внизу - и я понятия не имею, что это значит, и я сомневаюсь, что это уместно.

Во-вторых, есть два потока, которые выходят по неизвестным причинам до того, как мое приложение завершит загрузку. Опять же, я не думаю, что это необычно. Я только заметил это.

В-третьих, мое приложение загружает "PresentationFramework.Classic.dll". Классический? Что это хотя бы значит? И в отличие от чего? Разве мое приложение не должно использовать «классическую» версию WPF? Это странно для меня ...

В-четвертых, мое приложение называется «UI.vshost.exe». Исполняемый файл моего приложения - «UI.exe» - я не помню, чтобы когда-либо видел «vshost», прикрепленный к имени файла моего исполняемого файла, в любой версии VS в прошлом. Я подтвердил, что «vshost» появляется в окне вывода как в режиме выпуска, так и в режиме отладки. Перезагрузка моего компьютера не имеет никакого эффекта. Удаление папок bin и obj и восстановление не имеют никакого эффекта. Я проверил каталог «bin» в папке моего проекта. Он содержит два исполняемых файла: UI.exe и UI.vshost.exe UI.exe составляет 76 КБ UI.vshost.exe составляет 14 КБ Двойной щелчок по файлам и запуск их вручную не имеет никакого эффекта. Окна не отображаются.

Наконец, на восьмой строке (без учета переноса строк) UI.vshost.exe утверждает, что он по сути «сам Loaded», как будто это dll, ссылающаяся на себя или что-то в этом роде. Опять же, это поднимает бровь.

Кроме того, я использую Visual Source Safe для контроля версий. Я слышал, что VSS несколько ненадежен с точки зрения отрасли, и известно, что в прошлом у него были поврежденные проекты. Может ли это быть виновником?

Естественно, я не эксперт по поводу того, что все это значит, иначе мне, вероятно, не пришлось бы публиковать его в StackOverflow.

Дай мне знать, если увидишь что-нибудь, чего мне не хватает ...

'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.HostingProcess.Utilities\9.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.HostingProcess.Utilities.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.HostingProcess.Utilities.Sync\9.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.Debugger.Runtime\9.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.Debugger.Runtime.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Users\hamilton.hollberg\Documents\Visual Studio 2008\Projects\AllSparkAdminTool\AllSparkAdminTool\bin\Debug\UI.vshost.exe'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Core\3.5.0.0__b77a5c561934e089\System.Core.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Xml.Linq\3.5.0.0__b77a5c561934e089\System.Xml.Linq.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Data.DataSetExtensions\3.5.0.0__b77a5c561934e089\System.Data.DataSetExtensions.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\UIAutomationProvider\3.0.0.0__31bf3856ad364e35\UIAutomationProvider.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\WindowsBase\3.0.0.0__31bf3856ad364e35\WindowsBase.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_32\PresentationCore\3.0.0.0__31bf3856ad364e35\PresentationCore.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\PresentationFramework\3.0.0.0__31bf3856ad364e35\PresentationFramework.dll'
The thread 0xbc0 has exited with code 0 (0x0).
The thread 0xd78 has exited with code 0 (0x0).
'UI.vshost.exe' (Managed): Loaded 'C:\Users\hamilton.hollberg\Documents\Visual Studio 2008\Projects\AllSparkAdminTool\AllSparkAdminTool\bin\Debug\UI.exe', Symbols loaded.
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll'
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Deployment\2.0.0.0__b03f5f7f11d50a3a\System.Deployment.dll'
A first chance exception of type 'System.Deployment.Application.InvalidDeploymentException' occurred in System.Deployment.dll
'UI.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\PresentationFramework.Classic\3.0.0.0__31bf3856ad364e35\PresentationFramework.Classic.dll'
The program '[2704] UI.vshost.exe: Managed' has exited with code 0 (0x0).

Ответы [ 5 ]

2 голосов
/ 16 июня 2009
public MainWindow()
{
    InitializeComponent();
}

Я подтвердил, что во время вызова InitializeComponent происходит бесконечный цикл. Это, вероятно, проблема связывания. На этом этапе мне придется начать комментировать строки XAML, пока я не найду источник.

2 голосов
/ 16 июня 2009

Я знаю, это звучит глупо, но вы пытались перезагрузиться? У меня VS 2008 делал странные вещи только для восстановления после перезагрузки.

2 голосов
/ 16 июня 2009

Все «vshost» означает, что ваше приложение запускается из Visual Studio.

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

1 голос
/ 16 июня 2009

Ну, вот что говорит MS по поводу Deployment Exception . Похоже, это может быть проблемой для меня. Мне также интересно, если вы случайно изменили свою конфигурацию с «Отладка» на «Развертывание».

0 голосов
/ 29 июня 2012

У меня была такая же проблема. В моем случае решение было проще. После поиска в интернете и попытки сделать кучу вещей, лекарство должно было перезагрузить мой компьютер. Я видел другие посты людей с этой проблемой, для которых перезагрузка не работала, но это помогло мне.

...