Ошибка после создания исполнительного .exe файла - VB

Узнай цену своей работы

Формулировка задачи:

Добрый день! Столкнулся с непонятной для себя проблемой. Программу внутри студии работает - всё как надо. Пытаюсь сделать .exe через "Make .exe". Всё формируется. Запускаю - главная форма включается, кнопки функционируют. Но, когда нажимаю кнопку по запуску процедуры подвисает и выпадает ошибка: "Windows прекращает работу программы" Сигнатура проблемы: Имя события проблемы: APPCRASH ... Имя модуля с ошибкой: MSVBVM60.DLL Версия модуля с ошибкой: 6.0.98.15 Думал, может где я накосячил. Скачал из готовых примеров (предлагаемых на форуме) - Многопоточность в Visual Basic Запускаю приложенный в архиве exe файл. Потоки запускаются. Но, после закрытия программы - та же ошибка, что и у меня. Пробовал запускать от администратора и с разрешением проблемы совместимости. Скачал данную библиотеку, закинул в System32, через regsvr32.exe зарегистрировал, перезагрузил компьютер - беда осталась...Как быть я не знаю..Может знает кто, как победить?

Решение задачи: «Ошибка после создания исполнительного .exe файла»

textual
Листинг программы
  1. Option Explicit
  2. Private mThreadID As Long
  3. Public hThread As Long
  4. Private Declare Function CreateThread Lib "kernel32" (lpThreadAttributes
  5. As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long,
  6. lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long)
  7. As Long
  8. Private Declare Function GetExitCodeThread Lib "kernel32" (ByVal hThread
  9. As Long, lpExitCode As Long) As Long
  10. Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle
  11. As Long, ByVal dwMilliseconds As Long) As Long
  12.  
  13. Private Sub Command1_Click()
  14. ExitThread
  15. End Sub
  16. Private Sub Form_Load()
  17.      Dim TID As Long
  18.      hThread = CreateThread(ByVal 0&, ByVal 0&, AddressOf Cross, ByVal
  19. 0&, 0, TID)
  20.      mThreadID = TID
  21. End Sub
  22. Private Sub Form_Unload(cancel As Integer)
  23.      ExitThread
  24.   End Sub
  25. Private Sub ExitThread()
  26.      Dim Ret As Long
  27.      if modJulia.Cross Then
  28.       modJulia.Cross = false
  29.      GetExitCodeThread hThread, Ret
  30.      if Ret = &H103& then
  31.      WaitForSingleObject hThread, &HFFFFFFFF
  32. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут