• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Сохранение файла в файловой системе сервера

  • Автор темы zum
  • Дата начала
Z

zum

Собственно как это сделать?
У меня идея одна, заатачить файл к документу,запустить агента на сервере, который этот атач снимет и файл положит в папку какую надо....

Но не хочется писать агента для такой ерунды.

Может есть другое простое решение?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
215
может просто WebDav ?
 
Z

zum

поднимать на сервере его не есть гуд...
программно может какнить?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
215
Z

zum

просто, есть например возможность запустить агента на сервере, думал чтото такое, но без агента, видимо никак)
Лана агент так агент
 
A

Anonimous

Написал код, он выгружает данные в файл txt. Мне надо выгрузить его на сервер, задав путь к серверу, путь к папке. Filecopy "c:\notesaltas.txt", "\\ip-к сервера\D:\notesaltas.txt" не помогло, он матерится "File not found".
Пробую

Dim filenames As String
filenames = ws.SaveFileDialog( _
False,"File name",, "\\ip-к сервера\d:\work", "notesaltas.txt")

Но он, к сожалению, предложил лишь локальные папки.
Можно ли вообще Лотусскриптом выгрузить файл на сервер?
 
A

Anonimous

И это пробовал
ws.SaveFileDialog( _
False,"File name",, "\\IP сервера\D$", "notesaltas.txt")
Не просит авторизоваться, все мне локальные диски открывает
 

dimat

Well-known member
31.07.2008
508
0
BIT
0
Anonimous
А если подключить сетевую папку как диск?
 

VladSh

начинающий
Lotus Team
11.12.2009
1 784
157
BIT
57
Anonimous
Способ прямого сохранения на сервер - это, на самом деле, через задницу.
С сервером надо общаться через агентов. Создаём док, вкладываем файл, запускаем агент с помощью RunOnServer и передаём параметром noteId созданного документа, а в агенте пишем код, сохраняющий файл на диск /для работы с файловой системой уровень доступа агента должен быть = 2/.
 
A

Anonimous

А так не получилось. Я создал агента, к-рый выполняется на сервере. Во вьюхе сделал кнопку, в к-рой создается документ, передаваемый агенту.
В поле этого документа записываю путь к файлу, к-рый хочу создать на известном сервере так:

docCur.ReplaceItemValue "FileName", "\\IP-сервера\d$\EquipmentInfo.txt"

потом вызываю агент

agent.RunOnServer(docCur.NoteID)

В самом агенте следующий код

Dim docCur As NotesDocument
Set docCur = session.CurrentDatabase.GetDocumentByID(session.CurrentAgent.ParameterDocID)

If docCur Is Nothing Then Exit Sub

fileNum% = FreeFile()
fileName$ =docCur.Getitemvalue("FileName")(0)

Open fileName$ For Output As fileNum%

И код какой был.

Файл не создался.
Код агента работает, проверял на стороне клиента. Про уровни безопасности агента не забыл, дал сразу третий.
 
A

Anonimous

Нет, понял. Забыл в агенте убрать UI объекты :lol: . Работает. Спасибо
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!