Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];

Вниз

сеть не видно в сервисе   Найти похожие ветки 

 
tim   (2003-10-15 12:06) [0]

Добрый день, Уважаемые.
Намедни столкнулся с такой проблемой: есть сервис, которые архивирует данные. Необходимо, чтобы после этого архив был скопирован на сетевую папку. НО! похоже, что сервисы принципиально ничего не хотят знать о сети. команды для перемещения или копирования файлов не срабатывают, ни стандартные из дельфи, ни WinApi. Пробовал также запустить
GetDriveType(Drive), где Drive - сетевая папка, возвращает ошибку "The root directory does not exist". хотя из простой программы все ок(DRIVE_REMOTE). Решил обмануть: написал внешнюю программу, которая просто перемещает файл. Имена файлов передаю через реестр(хотя это не имеет значения). Если запускать отдельно - все ок, если из процесса - ошибка. Кто нибудь с этим сталкивался? Как победить?


 
CMeX   (2003-10-15 12:10) [1]

Если стоит фаервол, то забудь.


 
tim   (2003-10-15 12:13) [2]

его нет, да и причем он?


 
CMeX   (2003-10-15 12:44) [3]

А при том, что он отшивает любую сетевую активность если нет разрешения, а копирование по сети происходит насколько я помню на пакетном уровне.


 
Reindeer Moss Eater   (2003-10-15 12:55) [4]

НО! похоже, что сервисы принципиально ничего не хотят знать о сети.

Local System Account ничего не знает о сети, а не сервис.


 
tim   (2003-10-15 12:58) [5]

не, я запускал даже под аккаунтом админа сети, не помогает.


 
Reindeer Moss Eater   (2003-10-15 13:00) [6]

GetDriveType(Drive), где Drive - сетевая папка, возвращает ошибку "The root directory does not exist".

На диски, замаппенные интерактивным пользователем сервису глубоко наплевать. Он их не видит. Он сам должен их маппить


 
tim   (2003-10-15 14:41) [7]

как я понимаю, это существенно если вход в систему не произошел,
а если сервис работает под моим аккаунтом, когда я вошел в систему, он должен видеть замаппеные диски?


 
Reindeer Moss Eater   (2003-10-15 14:45) [8]

Не должен. Не обязан. И не видит.


 
tim   (2003-10-15 15:20) [9]

каким же образом это проделать?
ведь это возможно! не может такого быть, чтобы нельзя было это сделать.
для примера:я делал bat-файл и запускал его шедуллером - все отлично работает.


 
Reindeer Moss Eater   (2003-10-15 15:32) [10]

каким же образом это проделать?
Что?

ведь это возможно!
Что?

Ты вообще [6] до конца прочитал?


 
Cobalt   (2003-10-19 14:52) [11]

2 Reindeer Moss Eater
Даже если сервис запущен под учётной записью админа, он, получается, работает в отдельной сессии, так?
И после локального входа Админа, всё равно у них разные сессии?


 
igornov   (2003-11-13 17:29) [12]

можно я это делаю так:

var
MyResource : TNetResource;
e3,e2_t,e3_t : string;
begin
with MyResource do
begin
dwScope := RESOURCE_GLOBALNET;
dwType := RESOURCETYPE_DISK;
dwDisplayType := RESOURCEDISPLAYTYPE_GENERIC;
dwUsage := RESOURCEUSAGE_CONNECTABLE;
lpLocalName := ""; //тут можно замапить на диск а можно и не мапить
lpRemoteName := "\\197.168.100.15\galtrigger$";
lpProvider := nil;
end;
try
WNetAddConnection2( MyResource,
PChar("always"),//password
PChar("SOFTLAB\triguser"),
0);
trini:=tinifile.create("\\197.168.100.15\galtrigger$\trigger.ini");
e3:=trini.ReadString("SQLdriver","SQLname","");
e2_t:=trini.ReadString("SQLdriver","SQLtestserver","");
e3_t:=trini.ReadString("SQLdriver","SQLtestname","");
finally
WNetCancelConnection2 ("\\197.168.100.15\galtrigger$",0,false);
trini.free;
end;
end;

и при этом сервис работает под учётной системной записью или любой другой.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
1-63179
ValeX
2004-01-10 16:24
2004.01.20
компилер пропускает строки


4-63458
goliath
2003-11-16 16:31
2004.01.20
WM_COPYDATA


14-63364
Nick-From
2003-12-29 17:03
2004.01.20
процессор с 200Мгерцовой шиной


3-62968
Olivka
2003-12-24 12:49
2004.01.20
Работа с ХП, возвращающими данные через FIBdataset


8-63257
Anton2000
2003-09-17 17:31
2004.01.20
TrackBar в проигрывателе музыки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский