Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Перенос файлов из сетевой папки в локальную службой / 25 сообщений из 45, страница 1 из 2
15.03.2019, 11:41
    #39786525
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
Службой подключаюсь к сетевому ресурсу через WNetAddConnection2, переношу из локальной папки в сетевую папку файлы(copyfile, deletfile) все хорошо, но когда наоборот хочу перенести из сетевой папки в локальную ничего не происходит. подскажите как реализовать перенос из сетевой папки
...
Рейтинг: 0 / 0
15.03.2019, 11:45
    #39786528
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimka... ничего не происходит.
Гасишь исключение?
...
Рейтинг: 0 / 0
15.03.2019, 11:51
    #39786538
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
goldmi45,
в лог пишу SysErrorMessage(GetLastError)
...
Рейтинг: 0 / 0
15.03.2019, 11:52
    #39786540
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkagoldmi45,
в лог пишу SysErrorMessage(GetLastError) лог пустой
...
Рейтинг: 0 / 0
15.03.2019, 12:10
    #39786559
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkaСлужбой подключаюсь к сетевому ресурсу через WNetAddConnection2

...и она подключается?
пользователь LOCAL_SYSTEM вроде как не имеет таких прав.

warkdimkaлог пустой

Можешь попробовать OutputDebugString
https://docs.microsoft.com/en-us/sysinternals/downloads/debugview
https://stackoverflow.com/questions/11218434/how-to-view-output-of-outputdebugstring

И в любом случае промониторь файловый доступ своей службы через SysInternals Process Monitor - что она делает, где она делает, что ей Windows отвечает
...
Рейтинг: 0 / 0
15.03.2019, 12:16
    #39786567
YuRock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimka,

Если "когда наоборот хочу перенести из сетевой папки в локальную ничего не происходит",
т.е. всё, все функции отрабатывают без ошибок и возвращают True (грубо говоря),
и файлы там точно были,
то это может означать только одно: ты стянул из сетевой шары вирусы и твой антивирус удалил их до того, как ты успел увидеть эти файлы.
...
Рейтинг: 0 / 0
15.03.2019, 12:16
    #39786569
YuRock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
Arioch...и она подключается?
пользователь LOCAL_SYSTEM вроде как не имеет таких прав.Не имеет, но раз он файлы "туда" смог скопировать, то оттуда - тем более можно будет.
...
Рейтинг: 0 / 0
15.03.2019, 12:21
    #39786581
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkagoldmi45,
в лог пишу SysErrorMessage(GetLastError)
GetLastError может затираться любым успешным действием.
...
Рейтинг: 0 / 0
15.03.2019, 12:27
    #39786583
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
Arioch,
если запускать через обычное приложение тот же самый код, то все работает: и подключается и файлы переносит
...
Рейтинг: 0 / 0
15.03.2019, 12:33
    #39786587
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
YuRockwarkdimka,

Если "когда наоборот хочу перенести из сетевой папки в локальную ничего не происходит",
т.е. всё, все функции отрабатывают без ошибок и возвращают True (грубо говоря),
и файлы там точно были,
то это может означать только одно: ты стянул из сетевой шары вирусы и твой антивирус удалил их до того, как ты успел увидеть эти файлы.
у меня нет антивируса
...
Рейтинг: 0 / 0
15.03.2019, 12:40
    #39786594
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
Arioch,

подключаюсь естественно под пользователем другой машины (на которой лежит расшаренная папка)
...
Рейтинг: 0 / 0
15.03.2019, 12:48
    #39786606
YuRock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkaYuRockwarkdimka,

Если "когда наоборот хочу перенести из сетевой папки в локальную ничего не происходит",
т.е. всё, все функции отрабатывают без ошибок и возвращают True (грубо говоря),
и файлы там точно были,
то это может означать только одно: ты стянул из сетевой шары вирусы и твой антивирус удалил их до того, как ты успел увидеть эти файлы.
у меня нет антивирусаЗначит, если выполнены все перечисленные мной условия, то проблема неидентифицируема и неразрешима.
...
Рейтинг: 0 / 0
15.03.2019, 13:06
    #39786642
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
YuRock,
так а почему, если запускать в приложении тот же код, все выполняется? антивирус виноват? если не знаешь - не засерай тему
...
Рейтинг: 0 / 0
15.03.2019, 13:09
    #39786646
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkaподключаюсь естественно

я про то, какой пользователь службу выполняет
...
Рейтинг: 0 / 0
15.03.2019, 13:09
    #39786647
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkaArioch,

подключаюсь естественно под пользователем другой машины (на которой лежит расшаренная папка)
А на локальную папку пользователь другой машины имеет доступ?

ЗЫ: код мы увидим?
...
Рейтинг: 0 / 0
15.03.2019, 13:11
    #39786649
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
goldmi45warkdimkagoldmi45,
в лог пишу SysErrorMessage(GetLastError)
GetLastError может затираться любым успешным действием.



у тебя тут вообще нет никакого Exception иначе бы была пустая строка как минимум (а точнее строка типа "ошибок нет все хорошо")

вспоминаем ,когда именно на x87 ловится состояние ошибки, однако.

Код: pascal
1.
2.
a := 1/0; // или даже вообще a := 0; a := 1/a; А то начнёт компилятор сам вычислять константы....
a := a+a; // а вот теперь проверяем на предмет раньших ошибок
...
Рейтинг: 0 / 0
15.03.2019, 13:12
    #39786651
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
goldmi45ЗЫ: код мы увидим?

нафиг код, пусть свою службу через Process Monitor трасисрует, что она реально пытается с файлами делать
...
Рейтинг: 0 / 0
15.03.2019, 13:13
    #39786652
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
Arioch,

С примером согласен, кривой.
...
Рейтинг: 0 / 0
15.03.2019, 13:14
    #39786653
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
goldmi45,

Вот если бы ты написал RaiseLastWin32Error(); - тогда да, тут бы ничего не было когда нет ошибки.
Но у тебя WriteLN и независимо от GetLastError он как минимум LN-то должен был написать
...
Рейтинг: 0 / 0
15.03.2019, 13:21
    #39786661
warkdimka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
goldmi45warkdimkaArioch,

подключаюсь естественно под пользователем другой машины (на которой лежит расшаренная папка)
А на локальную папку пользователь другой машины имеет доступ? у локальной папки все права расшарены на всех пользователей.
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 Attr := faAnyFile - faVolumeID - faDirectory; //подключение
 nw.dwType := RESOURCETYPE_ANY;                                  
 nw.lpLocalName := nil;
 nw.lpRemoteName := PChar(config.ReadString('Settings', 'pathnetin', '0'));
 nw.lpProvider := nil;
 Err := WNetAddConnection2(nw, PChar(config.ReadString('Settings', 'netPass', '0')), PChar(config.ReadString('Settings', 'netUser', '0')), 0);

 if FindFirst(config.ReadString('Settings', 'path', '0') + '*.xml', Attr, Sr) = 0 then //работа с каталогом (все пути указанны верно)
    repeat
      CopyFile(PChar(config.ReadString('Settings', 'path', '0') + Sr.Name), PChar(config.ReadString('Settings', 'pathnetin', '0')+Sr.Name),false);
      DeleteFile(config.ReadString('Settings', 'path', '0') + Sr.Name);
    until FindNext(Sr) <> 0;
...
Рейтинг: 0 / 0
15.03.2019, 13:38
    #39786677
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimka,

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if FindFirst(config.ReadString('Settings', 'path', '0') + '*.xml', Attr, Sr) = 0 then //работа с каталогом (все пути указанны верно)
repeat
  try
  CopyFile(PChar(config.ReadString('Settings', 'path', '0') + Sr.Name), PChar(config.ReadString('Settings', 'pathnetin', '0')+Sr.Name),false);
  DeleteFile(config.ReadString('Settings', 'path', '0') + Sr.Name);
  except
    on E: Exception do
      WriteLog(E.Message);
  end;
until FindNext(Sr) <> 0; 


А если сделать так? WriteLog - это процедура записи сообщения в лог.
...
Рейтинг: 0 / 0
15.03.2019, 13:39
    #39786678
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimka
Код: sql
1.
2.
CopyFile(PChar(config.ReadString('Settings', 'path', '0') + Sr.Name), PChar(config.ReadString('Settings', 'pathnetin', '0')+Sr.Name),false);
      DeleteFile(config.ReadString('Settings', 'path', '0') + Sr.Name);



Ч.т.д.

А почему ты думаешь, что они вообще сработали???
Какие у тебя основания предполагать это вообще???

Ты их результат провeряшь? нет. Значит ты монетку подбрасываешь, то ли будет работать, то ли нет!

http://delphi.scps.ru/appl/appl5109.htm

И обязательно проситать статью 2010 года!
90% кода в интернете - говно
https://www.gunsmoker.ru/2010/05/90.html


http://docwiki.embarcadero.com/Libraries/Rio/en/System.SysUtils.CheckOSError
http://docwiki.embarcadero.com/Libraries/Rio/en/System.SysUtils.RaiseLastWin32Error

только когда у тебя
Код: pascal
1.
CheckOSError(CopyFile(...


Исключение бросит - не забудь с ним что-нибудь сделать
...
Рейтинг: 0 / 0
15.03.2019, 13:39
    #39786680
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
goldmi45
Код: pascal
1.
2.
  except
    on E: Exception do



какой на хрен Delphi TException в чистом Win32-коде ? Откуда???

PChar на каждом шагу и чаще видишь ?
...
Рейтинг: 0 / 0
15.03.2019, 13:41
    #39786682
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimkaErr := WNetAddConnection2(nw, PChar(config.ReadString('Settings', 'netPass', '0')), PChar(config.ReadString('Settings', 'netUser', '0')), 0);

вот это вообще феерия!

записали код ошибки.... И выкинули его на помойку.

90% кода в интернете - говно
...
Рейтинг: 0 / 0
15.03.2019, 13:43
    #39786684
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос файлов из сетевой папки в локальную службой
warkdimka
Код: sql
1.
2.
3.
4.
5.
 if FindFirst(config.ReadString('Settings', 'path', '0') + '*.xml', Attr, Sr) = 0 then //работа с каталогом (все пути указанны верно)
    repeat
      CopyFile(PChar(config.ReadString('Settings', 'path', '0')  + Sr.Name), PChar(config.ReadString('Settings', 'pathnetin', '0')+Sr.Name),false);
      DeleteFile(config.ReadString('Settings', 'path', '0')  + Sr.Name);
    until FindNext(Sr) <> 0;



Переменные? а что это такое???
Чем больше комьпютер тормозит - тем круче программа!
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Перенос файлов из сетевой папки в локальную службой / 25 сообщений из 45, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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