А как из 1С обратиться к системной папке? #111808


#0 by Тертый
к примеру, Program Files?Уточню: мне надо узнать СущетствуетФайл("c:Program FilesWinRARwinrar.exe"). Только буква диска может быть разная....
#1 by Добрый
Через КаталогВременныхФайлов узнаешь букву диска, и потом вызывай СушествуетФайл
#2 by Тертый
апаньки! можно и жестко прописать, но лучше через переменную.
#3 by Муму после всплытия
из реестра можно узнать.....................
#4 by Uho
+1 или через WindowsКаталог
#5 by Тертый
спасибо, попробую. Но если я каталог темпов сам в твикере переписал на другой диск? облом?
#6 by Тертый
WindowsКаталог поуниверсальнее будет, ИМХО.
#7 by Добрый
Забывать стал семерку ... Память уже не та... Восьмерка помалу замещает...2 Главное подход найти, а метод подобрать можно;)
#8 by Defender aka LINN
№6 - а если у меня винда на одном диске, а Program Files на другом, к примеру? Или называются не так? Лучше уже через реестр, или вообще, rar.exe в каталог базы/1С переписать
#9 by Сигурней Вивер
А можно КомандыСистемы("set > "+КаталогИБ+"set.txt") и set.txt пропарсить на предмет значения переменной ProgramFiles
#10 by snaga
Запиши путь к архиватору в строковую константу :))
#11 by Муму после всплытия
а че не в справочник?? или перечисление..........................
#13 by Дурочка 1С
Лажа какая-то... Почему Program Files? Почему WinRAR? Если исходить из вовсе неочевидного предположения, что рар установлен в папку по умолчанию(???) .... тогда вообще ничего искать не надо пиши себе "c:Program FilesWinRARwinrar.exe"
#14 by smaharbA
Дальше на 1Сэ сам делай
#15 by Тертый
Йоптить....пока до дома доехал, уже куча мнений... По проядку:- в Справочник(константу,перечисление, в тексте модуля) уже делал - не понравилось - у клиента работает, дома фиг. И наоборот. Отсюда возник сабж.ВинРаР потому что им распаковываю. Поступает команда: сделать. Дают файлы для образца Рарусовская компонента их не видит вообще, а упаковывает нормально. Прилепил ВинРАР, не фонтан, конечно, но работает.smaharbA) (Мечтательно)Ишшоб понять, что у тебя написано....
#16 by Сигурней Вивер
Он возвращает при помощи ВХС-скрипта значения переменных окружения.
#17 by Тертый
16)Логически понятно, а так: китайская грамота. Завидую... :)Мой вывод:- WindowsКаталог - просто и со вкусом- 14) set <<?>>WshShell = CreateObject("WScript.Shell"){}: Переменная не определена (WshShell)smaharbA: к сожалению, 1С - мой второй язык программирования, а Basic - не первый :)
#18 by Сигурней Вивер
Весь этот код нужно выполнить внутри созданного ОЛЕ-объетка. ОЛЕ-объектом будет интерпретатор ВХС-скриптов.
#19 by Тертый
18) Слушай, умом я понимаю, но как это выразить в модуле формы? Типа "для особо одаренных"...
#20 by Сигурней Вивер
Ну например вот так:http://www.sinor.ru/~my1c/knowhow.htmlhttp://www.sinor.ru/~my1c/knowhow/math&VBS.htmlhttp://www.sinor.ru/~my1c/knowhow/macrowrd.htmlhttp://www.sinor.ru/~my1c/knowhow/noconwin.htmlДля описанных ниже действий должен быть установлен сервер сценариев Windows.Создайте *.vbs файл, в нем скрипт:--------------Вызывать из 1с так:ЗапуститьПриложение(Путь+"твойФайл.vbs");окно консоли даже и не откроется.А если текст команды заранее неизвестен, можно создать файл с командами средствами 1с, сохранить на диске, выполнить ЗапуститьПриложение(...), а затем удалить файл.Необходимо создать PIF-файл, в котором настроить "Закрывать окно при завершении программы", и из 1С запускать пиф.
#21 by Сигурней Вивер
Ну в общем, нужно творчески поковыряться. Как лучше я по памяти не скажу - редко этим способом пользовался.
#22 by Тертый
Ладно, спасибо, но: исходя из необходимости и достаточности 12) самый оптимальный вариант + малое кол-во строк ткста.
#23 by Uho
Я конечно все понимаю, но где папка Program Files в этом коде?.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С