Имя: Пароль:
1C
1С v8
Как узнать свободное место на диске?
,
0 Umka2008
 
08.11.13
09:31
Есть диск E. Нужно проверять его - как это сделать средствами 1с8 ?
1 Cube
 
08.11.13
09:36
Через скрипт какой-нить, наверное...
2 Cube
 
08.11.13
09:36
Но можешь забивать диск копиями шаблонного файла по 1 МБ, так и поймешь, сколько осталось :)
3 dk
 
08.11.13
09:36
переходите на 7.7 - там это реализовано ))

СвободноеМестоНаДиске(<?>)
Синтаксис:
СвободноеМестоНаДиске(<ИмяДиска>)
Назначение:
Возвращает размер свободного дискового пространства в байтах.
Параметры:
<ИмяДиска> - строка с именем диска (например, 'С:').
4 1dvd
 
08.11.13
09:38
(2) т.е. потом можно будет смело говорить "Осталось меньше 1 мб"
5 fmrlex
 
08.11.13
09:43
(0) Если не часто надо, то запускай из 1С батничек в котором какая-нибудь утилитка будет делать утилитка.exe >> СвободноеМесто.txt. Распарсишь файлег из 1С и будет тебе счастье.
6 dk
 
08.11.13
09:44
7 Cube
 
08.11.13
09:45
(4) Ну, если уж развивать эту пятничную версию, то надо иметь четыре шаблонных файла: 1 байт, 1 Кб, 1 Мб, 1Гб. Ну и забивать место сначала большими, потом по-меньше и считать, считать, считать))))
8 Godofsin
 
08.11.13
09:46
(7) Гениально! =))))
9 1dvd
 
08.11.13
09:46
(6) +1 только хотел предложить
10 Fish
 
08.11.13
09:46
(5) Эта утилитка называется dir. последней строкой показывает свободное место :))
11 1dvd
 
08.11.13
09:46
Set fso = CreateObject("Scripting.FileSystemObject")
Set d = fso.GetDrive("C:")
WScript.Echo d.FreeSpace

ну, на 1С сам переведёшь, я думаю
12 r_p
 
08.11.13
09:47
Или WMI...
ComputerName="."
Set wmi=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & ComputerName
& "\root\cimv2")
set disk=wmi.ExecQuery("select Caption, FreeSpace from Win32_LogicalDisk")
For Each i in disk
         WScript.echo i.Caption & " " & i.FreeSpace
Next
13 Sammo
 
08.11.13
09:48
fso      =    Новый COMОбъект("scripting.fileSystemObject");
Место = Число(fso.getDrive(fso.GetDriveName(пСетевойРесурс)).freeSpace());

Место в байтах. На сервере не взлетит.
14 aka AMIGO
 
08.11.13
09:48
(10) ""вот и выросло поколение, которое не знает команд ДОС!"" © :)
15 aka AMIGO
 
08.11.13
09:51
(3) кстати, 7-кой можно из 8-ки воспользоваться - по СОМ/ОЛЕ , а в 7-ке выполнить ту самую команду.
проще пареной репы :)
16 Cube
 
08.11.13
09:53
(15) Угу, а 7-ку запихнуть в двоичные данные в макет, чтобы разворачивать автоматом где надо, а потом удалять за ненадобностью))
17 1dvd
 
08.11.13
09:53
(15) осталось только купить семерку и устанивить всем пользакам... чтобы узнавать свободное место на диске
18 Umka2008
 
08.11.13
10:06
(13) спасибо, работает!
19 fmrlex
 
08.11.13
10:58
(10) Я в курсе про dir. Но автор по ОС ничего не написал. На линуксе будет другая утилита. Да и самому на сях написать утилитку, которая просто выводит фриспейс без лишних записей, проще будет.
Закон Брукера: Даже маленькая практика стоит большой теории.