Задачи - автоматизировать из VB6 процессы:
1) mount-инга этого диска без ввода пароля в диалоговом окне,
2) unmount-инга только этого диска (а не всех смонтированных).
Пока выходит криво. Работает только урезанное решение обеих задач:
- Код: Выделить всё
' MOUNT
' Для pgp нет нормальной командной строки, поэтому для mount конкретного диска придется вызывать окно ввода пароля
Set objShellApp = CreateObject("Shell.Application")
ret = objShellApp.ShellExecute("C:\PGP\PGPDisk50.pgd", "", "", "open", 1) ' выводит диалоговое окно для пароля, к которому "не подступиться" из VB6
Set objShellApp = Nothing
...
' UNMOUNT
' Для unmount всех (по одному не получилось!) pgp-дисков получилось воспользоваться ТОЛЬКО этой командой
' (горячая клавиша ctrl+shift+u, назначенная в опциях PGP Desktop)
Set WsShell = CreateObject("WScript.Shell")
WsShell.SendKeys "^+U"
Set WsShell = Nothing
На данный момент не удались попытки:
1) использовать командную строку (и через консоль, и из VB6 через ShellExecute) для ввода пароля при монтировании, для размонтирования,
2) использовать FindWindow, GetWindow, SetWindowText для адресного вписывания пароля в контрол диалогового окна,
2) использовать SendKeys, keybd_event для эмулирования ввода пароля нажатием на клавиши клавиатуры (диалоговое окно пароля, судя по инфе Spy++, очень "стойкое").
Подскажите пжст код, который сработает в этих 2 случаях для решения указанных двух задач. Спасибо.