Лучшим вариантом, вероятно, является создание точки входа Sub Main и вызов ExitProcess оттуда, а не из класса или формы.Или (что я и делаю) вызовите ExitProcess из события Form Unload и получите основную точку входа, такую как:
Sub Main code Launch Form Exit Main
Затем: Form_Unload code ExitProcess Endsub 'Form_Unload
Таким образом, ExitProcess будет последним битом кода, который вы выполняете.Это не будет красиво, и вы, вероятно, потеряете некоторые дескрипторы и еще много чего, но NT4 и выше довольно хорошо справляются с этим.Другими словами, выньте свое приложение из Sub Main и вызовите API, прежде чем выйти из него.
Примечание: это было опубликовано Kprobst, но в конце сообщения был неправильный ответ,Так что я публикую это здесь для ясности.