Могу ли я показать сообщение об ошибке или окно, которое остается видимым после выхода из приложения, используя VB6 - PullRequest
1 голос
/ 18 февраля 2011

Я пытаюсь открыть форму в новом окне, и я также хочу, чтобы это окно было открыто даже после закрытия приложения vb6.Это код, который я использую

Dim frmWB As frmErrWindow
     Set frmWB = New frmErrWindow
     frmWB.WBErrorWindow.RegisterAsBrowser = True

     Set ppDisp = frmWB.WBErrorWindow.object
     frmWB.Show

Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 18 февраля 2011

Для этого вам нужно упаковать форму и ее функциональность в другой exe-файл, а затем передать любые сообщения этому новому exe-файлу с помощью автоматизации COM или просто в качестве аргумента командной строки. Затем вы можете создать оболочку и запустить новый исполняемый файл. Это единственный способ сохранить что-то на экране после закрытия процесса программы. DLL, связанные с вашим приложением, работают в том же пространстве памяти, что и приложение, и освобождаются при закрытии приложения.

0 голосов
/ 25 февраля 2011

Я использовал объект IE, чтобы открыть форму в новом окне, и это сработало для меня.

0 голосов
/ 18 февраля 2011

Любые формы и объекты, которые вы создаете из VB6, будут закрыты при закрытии приложения, поскольку они существуют в пространстве памяти процесса. Единственный способ сохранить окно открытым после закрытия вашего приложения (о котором я знаю) - это использовать DLL-инъекцию, чтобы поместить ваш код в чужой процесс. Таким образом, ваше приложение VB6 может завершиться, и DLL во внешнем процессе останется работающей.

К сожалению, внедрение DLL не возможно при использовании только VB6.

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