• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Как Взять Путь Ко Временным Папкам Пользователя В Ос

  • Автор темы GveinBlade
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

GveinBlade

Всем привет.
Вопрос состоит в том как скриптом поднять виндовые временные папки определенные для данныго пользователя. Суть в том, что нужно сохранить файлик из документа во временную папку естественно прав у обычного юзверя для создания папки на C: нет. Следует использовать папки для хранения временных файлов в профиле пользователя определенных ОС, с данной задачей ни разу не сталкивался поэтому не знаю как взять из настроек ОС путь к папке, т.к. он будет менятся в зависимости от пользователя. Может кто сталкивался с данной задачей? Заранее благодарен за помощь.
 

savl

Lotus Team
28.10.2011
2 601
312
BIT
216
да, можешь заморочиться и взять Notes-temp:
Код:
Declare Function w32_OSGetSystemTempDirectory Lib "nnotes" Alias "OSGetSystemTempDirectory" ( ByVal S As String) As Integer
Declare Function mac_OSGetSystemTempDirectory Lib "NotesLib" Alias "OSGetSystemTempDirectory" ( ByVal S As String) As Integer
Declare Function linux_OSGetSystemTempDirectory Lib "libnotes.so" Alias "OSGetSystemTempDirectory" ( ByVal S As String) As Integer

Dim tempStr as string*256

Select Case Lcase(Left(ses.Platform,3))
Case "win":
s% = w32_OSGetSystemTempDirectory(tempStr)
Case "mac":
s% = mac_OSGetSystemTempDirectory(tempStr)
Case "lin":
s% = linux_OSGetSystemTempDirectory(tempStr)
Case Else:
Goto endh
End Select

rempStr = Left(tempStr,s%)
без разделителя в конце, так что не забудь "/"
 

savl

Lotus Team
28.10.2011
2 601
312
BIT
216
Забыл еще добавить: Dim tempStr as string*256
Иначче вернет пустую строку
 
Y

yerke

отрывок из рабочего класса
Код:
Public Function getTempDir() As String
If tempDir = "" Then
If Instr(Me.s.Platform, "Windows") > 0 Then
TempDir = Environ("Temp")
If Right(TempDir, 1) <> "\" Then
TempDir = TempDir & "\"
End If
Else
TempDir = Environ("HOME")
If Right(TempDir, 1) <> "/" Then
TempDir = TempDir & "/"
End If			
End If
End If
getTempDir = tempDir
End Function
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

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