В Win98SE в качестве оболочки (параметр "Shell" в "system.ini") прописанна программа на Delphi. Как из этой программы запустить Explorer.exe так, чтобы он выполнял функции Рабочего стола (с иконками, таскбаром и т.д.)? Если просто запустить "explorer.exe" - открывается окно проводника. Программа на Delphi просто восстанавливает папки "Рабочий стол" и "Главное меню" из резервной копии, и Рабочий стол надо выводить уже после того, как будет выполнена эта операция (а инече возникают ошибки совместного доступа). Может есть другие варианты (без изменения параметра "Shell")? Заранее спасибо!
а если эту прогу в автозагрузку засунуть (HKLM\software\microsoft\windows\currentversion\run)? или вобще в autoexec.bat?
Wega Просто батник сделай, в котором ты будешь всё восстанавливать, не обязательно для этого прогу делать, и пропиши его в autoexec.bat.
В автозагрузке прога не успевает срабатывать раньше, чем начнет загружаться Explorer, даже если засунуть в автозагрузку как сервис (RunService), т.е. до загрузки рабочего стола. Надо чтобы рабочий стол (т.е. explorer.exe) начал загружаться после того, как моя прога завершит свою работу. Autoexec.bat не подходит т.к. используются файлы с длинными именами, и в DOSе можно удалить (через deltree.exe) не любой каталог - нельзя удалить каталог, если полный путь к нему состоит из более 255 символов. Может есть еще варианты? Wega добавил [date]1095055188[/date]: Нашел одно простое решение. В "system.ini" прописал "Shell=Explorer.exe backup.exe", где backup.exe - моя прога для восстановления "Рабочего стола" и "Главного меню". При таком расскладе не возникает конфликта "explorer.exe" и "backup.exe" при совместном доступе к одним файлам и папкам. Хотя рабочий стол теперь меняется (восстанавливается) буквально на глазах -видно как исчезают старые ярлыки и появляются новые.