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


Автор: ArtNeoX 12.2.2006, 06:55
Запускал несколько раз свою программу в win 98. Потом нажал ctrl+alt+del и в списке процессов висит Project1 столько раз сколько я ее запускал и выходил из программы.
Как програмно при выходе из программы очистить память?

Автор: Exception 12.2.2006, 16:20
Если он там висит, значит приложение не завершилось smile . Нужно либо дать команду End, либо (что предпочтительнее) вызвать специальную процедуру, которая высвобождает все ресурсы и выгружает все загруженные формы.

Автор: ArtNeoX 12.2.2006, 16:24
в xp все нормально, а вот в win 98 продолжает висеть в памяти....

Автор: Exception 12.2.2006, 18:13
Цитата(ArtNeoX @ 12.2.2006, 17:24 Найти цитируемый пост)
в xp все нормально, а вот в win 98 продолжает висеть в памяти....

Покажи код.

Автор: Flotskiy 13.2.2006, 07:40
Добрый день всем!
При загрузке проги советую производить проверку от вторичного запуска:
Код

Private Sub Form_Load()
'========== Страховка от второго запуска проги.==========
If App.PrevInstance = True Then
MsgBox "Программа уже запущена!"
End
End If


А при выходе из программы советую:
Код

Private Sub Form_Unload(Cancel As Integer)
   
Dim ws As Workspace
Dim db As Database
Dim rs As Recordset
'
For Each ws In Workspaces
For Each db In ws.Databases
For Each rs In db.Recordsets
rs.Close
Set rs = Nothing
Next
db.Close
Set db = Nothing
Next
ws.Close
Set ws = Nothing
Next
Set frmGlavn = Nothing
Dim i As Integer
For i = Forms.Count - 1 To 0 Step -1
Unload Forms(i) 'Выгружаем все формы проекта
Next i
    Unload Me
    Set frmGlavn = Nothing
End Sub

Всего доброго!


Автор: Wilmor 26.2.2006, 14:03
Или посавь такой код в кнопку выхода smile
Код

Unload Me
End


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