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

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

GveinBlade

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

savl

Lotus team
28.10.2011
2 136
105
#4
да, можешь заморочиться и взять 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 136
105
#5
Забыл еще добавить: Dim tempStr as string*256
Иначче вернет пустую строку
 

yerke

Well-known member
28.08.2007
392
0
#6
отрывок из рабочего класса
Код:
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
 
Статус
Закрыто для дальнейших ответов.