Ошибка после создания исполнительного .exe файла - VB
Формулировка задачи:
Добрый день!
Столкнулся с непонятной для себя проблемой. Программу внутри студии работает - всё как надо.
Пытаюсь сделать .exe через "Make .exe". Всё формируется. Запускаю - главная форма включается, кнопки функционируют.
Но, когда нажимаю кнопку по запуску процедуры подвисает и выпадает ошибка:
"Windows прекращает работу программы"
Сигнатура проблемы:
Имя события проблемы: APPCRASH
...
Имя модуля с ошибкой: MSVBVM60.DLL
Версия модуля с ошибкой: 6.0.98.15
Думал, может где я накосячил.
Скачал из готовых примеров (предлагаемых на форуме) - Многопоточность в Visual Basic
Запускаю приложенный в архиве exe файл. Потоки запускаются. Но, после закрытия программы - та же ошибка, что и у меня.
Пробовал запускать от администратора и с разрешением проблемы совместимости.
Скачал данную библиотеку, закинул в System32, через regsvr32.exe зарегистрировал, перезагрузил компьютер - беда осталась...Как быть я не знаю..Может знает кто, как победить?
Решение задачи: «Ошибка после создания исполнительного .exe файла»
textual
Листинг программы
- Option Explicit
- Private mThreadID As Long
- Public hThread As Long
- Private Declare Function CreateThread Lib "kernel32" (lpThreadAttributes
- As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long,
- lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long)
- As Long
- Private Declare Function GetExitCodeThread Lib "kernel32" (ByVal hThread
- As Long, lpExitCode As Long) As Long
- Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle
- As Long, ByVal dwMilliseconds As Long) As Long
- Private Sub Command1_Click()
- ExitThread
- End Sub
- Private Sub Form_Load()
- Dim TID As Long
- hThread = CreateThread(ByVal 0&, ByVal 0&, AddressOf Cross, ByVal
- 0&, 0, TID)
- mThreadID = TID
- End Sub
- Private Sub Form_Unload(cancel As Integer)
- ExitThread
- End Sub
- Private Sub ExitThread()
- Dim Ret As Long
- if modJulia.Cross Then
- modJulia.Cross = false
- GetExitCodeThread hThread, Ret
- if Ret = &H103& then
- WaitForSingleObject hThread, &HFFFFFFFF
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д