Что может вызвать сбой приложения VB.NET перед выполнением любого кода? - PullRequest
1 голос
/ 14 января 2009

Мое приложение VB.NET компилируется, устанавливается и отлично работает на ПК для разработки.

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

Ошибка «столкнулся с проблемой и должен быть закрыт ...»

Я удалил все ссылки на внешние файлы, например, файлы значков и т. д.

У меня есть только одна локальная DLL, и ссылка, кажется, в порядке.

Какие еще проблемы могут вызвать эту проблему?

Спасибо! Jon

Обновление: на 1 ПК переустановка MDAC решила проблему. Однако большинство клиентов - это XP, и это не поможет.

Я все еще получаю ту же ошибку на некоторых ноутбуках с Windows XP.

Ответы [ 9 ]

2 голосов
/ 14 января 2009

Я видел это раньше с неверным файлом app.config. Учитывая только что опубликованную ошибку, вы можете проверить файл манифеста и для машины.

2 голосов
/ 28 июля 2009

Две возможности:

Это тип ошибки, которую вы получаете, когда vb.net обнаруживает ошибку во время инициализации. Например, если у вас есть

dim iClass as new myClass

в глобальной области (до подпрограмм или функций) формы или модуля запуска, и если при создании экземпляра iClass возникает ошибка, вы получаете довольно бесполезное сообщение об ошибке, не зная, где найти проблему.

Вы также можете получить этот тип ошибки, если во время инициализации происходит ложное срабатывание управляющего события, которое вызывает ошибку в обработчике события до начала выполнения _load. Это событие происходит случайно, «по замыслу», согласно Microsoft. Этого можно избежать, используя флаг, который переключается после выполнения _load, чтобы сообщить обработчикам, безопасно ли его запускать, и, возможно, разумным использованием назначенных свойств элемента управления во время разработки.

2 голосов
/ 14 января 2009

Вы можете посмотреть в журнале событий (начните с «eventvwr» в поле «Выполнить») для получения дополнительной информации.

2 голосов
/ 14 января 2009

Извините, что спросил очевидное, но на целевом ПК установлена ​​программа .Net Runtime?

1 голос
/ 14 января 2009

ОК - программа просмотра событий помогла. Я думаю.

Похоже, что некоторые ссылки не найдены во время установки.


Вот последние 6 записей ...

Faulting application pa.exe, version 2.0.1.26594, stamp 496e0437, faulting module kernel32.dll, version 5.0.2195.6946, stamp 40d78cce, debug? 0, fault address 0x0002bbf3. 

Detection of product '{3CA9D9FD-E8CD-4B73-8053-8C406ED8CB28}', feature 'DefaultFeature' failed during request for component '{ACA3C479-D7C7-902C-092A-E6635AD9A8B1}' 

Detection of product '{3CA9D9FD-E8CD-4B73-8053-8C406ED8CB28}', feature 'DefaultFeature', component '{7D04E12E-2803-6F47-E11C-B8146C27E61B}' failed.  The resource 'C:\Program Files\pa\pa-update.exe' does not exist. 

Faulting application pa.exe, version 2.0.1.26594, stamp 496dffb9, faulting module kernel32.dll, version 5.0.2195.6946, stamp 40d78cce, debug? 0, fault address 0x0002bbf3. 

Detection of product '{3CA9D9FD-E8CD-4B73-8053-8C406ED8CB28}', feature 'DefaultFeature' failed during request for component '{ACA3C479-D7C7-902C-092A-E6635AD9A8B1}' 

Detection of product '{3CA9D9FD-E8CD-4B73-8053-8C406ED8CB28}', feature 'DefaultFeature', component '{30A51F7D-D0DA-E436-F48F-1092ECE7858D}' failed.  The resource 'C:\Program Files\pa\pa-common.dll' does not exist. 
0 голосов
/ 04 января 2019

У меня было такое сегодня со мной. Моя ошибка заключалась в том, что я скопировал программу из другой программы и изменил ее в соответствии со своими требованиями. Проблема заключалась в том, что при запуске одной программы вторая без сбоев работала. Я обнаружил, что мне нужно изменить информацию о сборке. Я изменил Имя приложения, Название сборки и создал уникальный GUID. Как только я это сделал, я мог запускать обе программы одновременно.

0 голосов
/ 28 июля 2009

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

0 голосов
/ 22 января 2009

Я не знаю о .NET, но в Delphi вы можете использовать один экземпляр IDE для отладки второго экземпляра. Затем для устранения проблем при запуске (до начала правильной отладки) вы можете подключить IDE A к IDE B для отладки, затем в IDE B запустить приложение, ваш код, открытый в IDE A, может дать вам некоторые подсказки относительно вашей проблемы.

0 голосов
/ 14 января 2009

Не могли бы вы ориентироваться на более высокую версию платформы .NET, чем установлена ​​на других компьютерах?
Вы можете проверить целевую платформу вашего проекта (VS.2008) в «Моем проекте» на вкладке компиляции. Нажмите Дополнительные параметры компиляции ...
В нижней части диалогового окна «Дополнительные параметры компилятора» будет раскрывающийся список с каждой платформой.
На клиентском компьютере вы можете проверить версию .NET в панели управления «Программы и компоненты» (Vista) или «Установка и удаление программ» в XP

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...