Вопрос № 142879: Вопрос по VB6. Пример. Программа запускается с локального диска копирует себя в C:example.exe и продолжает работать. Если запускается с флешки то копирует себя в C:example.exe запускает свою копию example.exe а сама останавливается. Вопрос в то...
Вопрос № 142.879
Вопрос по VB6. Пример. Программа запускается с локального диска копирует себя в C:example.exe и продолжает работать. Если запускается с флешки то копирует себя в C:example.exe запускает свою копию example.exe а сама останавливается. Вопрос в том что я после того как я ее запускаю с флешки она делает копию себя и запускает example.exe я не могу потом отключить безопасно флешку из системы. Widows требует что бы я остановил работу ИМЕННО программы example.exe. Почему так ? Ведь она уже не зависит от своего
своего оригинала Как сделать так что подобного не происходило???
Приложение:
Отправлен: 02.09.2008, 09:19
Вопрос задал: Tristan (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: PsySex
Здравствуйте, Tristan! Дело в том, что при запуске любого приложения для него существует понятие "текущая директория". Так вот при запуске C:example.exe текущая директория является корнем флэшки, т.о. процесс как бы зависит от этого пути. Поэтому перед запуском
Код:
Shell "C:example.exe"
нужно изменить текущую директорию. Объявите API
Код:
Private(Public) Declare Function SetCurrentDirectory Lib "kernel32" Alias "SetCurrentDirectoryA" (ByVal lpPathName As String) As Long