Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Windows > программа на VB6 вешает виндовс


Автор: aksimus 25.11.2010, 20:24
Может кто-нибудь сталкивался с такой проблемой
Есть небольшое приложение на VB6, состоящее из 2х исполняемых файлов. В первой слушается порт через ВинСокет плюс по таймеру происходит запуск второго исполняемого файла (через функцию shell). При работе под Вин7, виндовс выдает запрос на разрешение запуска второго файла и в этот момент работа первой программы блокируется и если в этот момент что-то придет на сокет, то Виндовс зависнет наглухо.
Случай наблюдается на всех компах.

Может есть идеи ?

Автор: Akina 25.11.2010, 20:34
Цитата(aksimus @  25.11.2010,  21:24 Найти цитируемый пост)
виндовс выдает запрос на разрешение запуска второго файла 

Вот с этим и боритесь - включите приложение в список тех, которые не контролирует UAC.

Автор: aksimus 25.11.2010, 20:48
это частный случай с запросом на запуск.. на самом деле так происходит всегда когда управление переходит на ОС на длительное время

Автор: mihanik 25.11.2010, 21:00
Цитата(aksimus @  25.11.2010,  20:48 Найти цитируемый пост)
управление переходит на ОС на длительное время 


А это уже говорит о неправильной разработке программы.
Код нужно "вылизывать".

Автор: aksimus 27.11.2010, 15:09
в продолжение темы...

с проблемой подвисания разобрался, заменив функцию shell на ShellExecute из win32 api.

Но теперь возникла новая проблема, каждый раз при попытке его запуска программы  пользователю выводится сообщение "Разрешить внесение изменений на данном компьютере следующей программе неизвестного издателя ?". А так как апдейтер запускается раз в час по расписанию,  то это все очень быстро достанет пользователя. И что самое печальное, нет возможности добавить на лету эту программу в какой-нибудь "белый список", можно только понизить общий уровень безопастности на компьютере сразу для всех программ.

Есть ли идеи, как убедить Вин7 в том что программа "своя" и не надо каждый раз спрашивать разрешения на запуск, при этом не понижая общий уровень безопасности?

Автор: bems 13.12.2010, 18:03
Переписать так, чтобы права требовались только если обновление успешно загружено

Автор: mihanik 13.12.2010, 21:19
aksimus, ну, вот.... Не уверен я, что ты в нужном разделе тему поднял...
 smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)