Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Поддержка диска O (от mail.ru) / 25 сообщений из 27, страница 1 из 2
06.06.2019, 05:59
    #39823180
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Здравствуйте,

У Mail.ru появилась программа Диск О. Она превращает облачные хранилища в локальные диски на ПК.
Я скачал программу ДИСК-О https://disk-o.cloud/ (появился виртуальный диск на компьютере под буквой Z:)

Но вот DirectoryExists('Z:') выдает False, как будто диска не существует.
Функция GetDriveType('Z:') выдает DRIVE_NO_ROOT_DIR = 1; (The root path is invalid)

Что делать, как программно увидеть это диск ?

Заранее благодарен.
...
Рейтинг: 0 / 0
06.06.2019, 07:42
    #39823197
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
GetLogicalDriveStrings тоже молчит?
...
Рейтинг: 0 / 0
06.06.2019, 08:00
    #39823201
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Молчит, выводит все диски, кроме Z:
Всё то же самое, как будто диска Z не существует вообще.
...
Рейтинг: 0 / 0
06.06.2019, 08:35
    #39823208
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52Молчит, выводит все диски, кроме Z:
Всё то же самое, как будто диска Z не существует вообще.
Значит криворукие писали.

Проще подключать диск встроенными средствами. Даже в семерке была поддержка webdav.
...
Рейтинг: 0 / 0
06.06.2019, 09:38
    #39823247
X-Cite
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Попробуйте поставить ApiMonitor и внедрится в процесс программы, посмотрите какие winapi функции вызывает. Иногда помогает узнать много нового и интересного. Может есть какие-то другие функции...
...
Рейтинг: 0 / 0
06.06.2019, 11:00
    #39823304
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52,

скорее всего объект по типу специальных папок IShellItem
...
Рейтинг: 0 / 0
06.06.2019, 11:35
    #39823324
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
забей.
всё что делает мыло.рю - ГОВНО
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
13.06.2019, 05:12
    #39825897
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Здравствуйте,

Оказалось не все так просто.
Технически, ДискО - это сетевой диск, у меня также есть и другой сетевой диск.

СТРАННОСТЬ: из программ, запущенных с повышенными правами (Run as Administrator), все сетевые диски не видны. Функция GetDriveType вернет 1=DRIVE_NO_ROOT_DIR (The root path is invalid). Кстати, DirectoryExists тоже не видит сетевой диск по букве по той же причине, видимо.

Но если программу с обычными правами, то будет все ОК.

Почему GetDriveType и DirectoryExists не работают, если программа запущена с повышенными правами?
...
Рейтинг: 0 / 0
13.06.2019, 05:52
    #39825901
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Извините, я писал, что все сетевые диски не видны - это я поспешил. Похоже, что проблема только с ДискО, другие сетевые диски видны.
...
Рейтинг: 0 / 0
13.06.2019, 08:17
    #39825939
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52Почему GetDriveType и DirectoryExists не работают, если программа запущена с повышенными правами?потому что это другой пользователь, и ему нужно подключать всё отдельно.
...
Рейтинг: 0 / 0
13.06.2019, 10:17
    #39825997
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Ну почему же другой.
Эта же самая учетка, просто запустил так: правой кнопкой мышки на exe-файле, выбираю п.меню "Запуск от имени администратора" и в "Диспетчере задач" видно, что программа запущена от моей же учетки.
...
Рейтинг: 0 / 0
13.06.2019, 10:32
    #39826005
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52Ну почему же другой.
Эта же самая учетка, просто запустил так: правой кнопкой мышки на exe-файле, выбираю п.меню "Запуск от имени администратора" и в "Диспетчере задач" видно, что программа запущена от моей же учетки.

Нет, с точки зрения сетевых подключений - это разные пользователи, так работает UAC.
Можете проверить на Total Commander, например. Подключить сетевой диск, потом запустить его от имени администратора - он этот диск не увидит.
...
Рейтинг: 0 / 0
13.06.2019, 16:27
    #39826238
antox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Клал на диск-о базу access всё работало, подключался чз ado
...
Рейтинг: 0 / 0
13.06.2019, 17:06
    #39826268
Василий 2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
wadmanПроще подключать диск встроенными средствами. Даже в семерке была поддержка webdav.
Мылы вроде так и не сподобились на него
...
Рейтинг: 0 / 0
13.06.2019, 21:50
    #39826345
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Василий 2wadmanПроще подключать диск встроенными средствами. Даже в семерке была поддержка webdav.
Мылы вроде так и не сподобились на него

Прикольно, бесплатный NextCloud умеет из коробки, а мыло не шмогло?
...
Рейтинг: 0 / 0
14.06.2019, 08:07
    #39826394
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Вот что удалось выяснить по данному вопросу.

Как правильно подсказал alekcvp (спасибо ему) любая программа,
- запущенная под пользователем "User1"
и
- запущенная под пользователем "User1" от имени администратора
это 2 разных пользователя с точки зрения сетевых соединений!

Чтобы любая программа увидела DiskO, она должна быть запущена под той же учеткой и с теми же правами, что и программа DiskO.exe. Т.е. если программу DiskO.exe запускаем от имени администратора под User1, то и программа (например, TotalCommander) должна быть запущена тоже от имени администратора под User1.
Это легко проверить на примере Total Commander.

У меня на ПК программа "DiskO.exe" подключает сетевой диск Z:

ОСТАЕТСЯ ВОПРОС НАСЧЕТ СЛУЖБЫ

Моя служба копирования файлов запускается от учетки User1
Перед копированием файлов служба запускает "C:\Users\User1\AppData\Local\Mail.Ru\Disk-O\vcurrent\DiskO.exe" и делает паузу 10 сек, чтобы диск Z: успел появиться и стал доступен для службы.

В Диспетчере задач процесс с именем "DiskO.exe" действительно появляется, он запущен ровно под той же учеткой, что и служба (это логично, т.к. его вызывает сама служба).

Но, после этого служба проверяет доступность диска Z: и оказывается, что диск Z: недоступен.

Да, я знаю, что для службы нужно самостоятельно подключать сетевые диски (обычно я это делаю с помощью Net Use), но ведь я уже запустил "DiskO.exe", разве не должен появиться сетевой диск Z: ? Может для подключения именно из под службы нужно его как-то по-другому подключать или дополнительно вызвать Net Use ... ? Как сделать, чтобы служба увидела сетевой диск Z: ?

Подскажите идею, если знаете.
...
Рейтинг: 0 / 0
14.06.2019, 09:48
    #39826427
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52,

в sysInternals есть утилита которая позволяет программы запускать от пользователя System, запустите через неё тотал и тестите
...
Рейтинг: 0 / 0
14.06.2019, 10:55
    #39826467
Василий 2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
alekcvpПрикольно, бесплатный NextCloud умеет из коробки, а мыло не шмогло?
Ну им же надо как-то впаривать свой говнософт. А ежели все будут подключаться по вебдаву штатными средствами, как они смогут получить себе прекрасные мылошные тулбары в браузер?
...
Рейтинг: 0 / 0
14.06.2019, 13:57
    #39826603
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52В Диспетчере задач процесс с именем "DiskO.exe" действительно появляется, он запущен ровно под той же учеткой, что и служба (это логично, т.к. его вызывает сама служба).

Но, после этого служба проверяет доступность диска Z: и оказывается, что диск Z: недоступен.Вполне возможно, что не хватило прав на монтирование диска. У этой "DiskO.exe" есть логи? Смотрите их
...
Рейтинг: 0 / 0
14.06.2019, 15:41
    #39826662
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52Подскажите идею, если знаете.

Запускать из службы его с максимальными привилегиями, в зависимости от того способа каким вы его запускаете (т.е. программный аналог "от администратора").
...
Рейтинг: 0 / 0
06.07.2019, 15:21
    #39834613
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Здравствуйте.

В тех.поддержке Mail.ru мне ответили:

Вам необходимо запустить и службу и программу Диск-О: в рамках одной сессии и в рамках одного пользователя.

Моя служба запускается либо под Local System, либо под другой учеткой. Служба внутри себя вызывает CreateProcess для запуска внешнего приложения DiskO.exe. Понятно, что DiskO.exe запустится под той же самой учеткой, под которой работает служба.

А вот про сессию я не понял: это будет та же самая сессия или другая? Если другая, то как запустить в рамках тоже же сессии? И что вообще называется сессией?
...
Рейтинг: 0 / 0
06.07.2019, 22:42
    #39834649
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52,

Вход пользователя в систему
...
Рейтинг: 0 / 0
07.07.2019, 05:45
    #39834663
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Ну тогда, что такое сессия, я знаю. Я думал, что имеется ввиду какая-то другая сессия.
А служба ведь стартует до входа пользователей и работает независимо. Получается, что из службы запустить DiskO.exe не получится?
...
Рейтинг: 0 / 0
07.07.2019, 08:53
    #39834666
x1ca4064
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
m52 Получается, что из службы запустить DiskO.exe не получится?

Если взаимодействует с пользователем, то не получится. В противном случае - можно.
...
Рейтинг: 0 / 0
07.07.2019, 14:16
    #39834715
m52
m52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поддержка диска O (от mail.ru)
Под взаимодействием с пользователем что имеется ввиду? Служба никак не взаимодействует с пользователями. Ну и как тогда запустить DiskO.exe из службы в той же сессии?
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Поддержка диска O (от mail.ru) / 25 сообщений из 27, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]