05.02.2009, 17:47 | #1 |
Участник
|
Необходимо вызвать архивацию файлов из кода навижен.
В версии 3.6. без всяких вопросов канает вызов SHELL с указанием пути к WinRAR и параметров архивации, но аналогичный код в 4.0 работат с идиотскими запросами --------------------------- Microsoft Business Solutions-Navision --------------------------- Вы собираетесь впервые запустить следующий исполняемый файл: Исполняемый файл: C:\WinRAR\WinRAR.exe Параметр: A -ep -ibck ... Не забывайте, что вы, возможно, работаете с исполняемым файлом, который может причинить вред компьютеру. Вы доверяете этому исполняемому файлу и его параметру? --------------------------- Да Нет --------------------------- Как можно их отключить? Ещё как вариант хочу записать это в bat и вызывать сам bat-файл с помощью SHELL, но почти уверен что опять будет запрос |
|
05.02.2009, 18:00 | #2 |
Участник
|
Цитата:
Код: ExecName := 'C:\windows\notepad.exe'; param := 'C:\MyFile.txt'; ret := SHELL(ExecName, param); |
|
05.02.2009, 18:04 | #3 |
Участник
|
ага, потому что иначе он ругается либо что не найден файл, либо что там символы неверные
т.е. я нажимаю ДА и всё что надо архивируется, но запрос хочется скрыть |
|
05.02.2009, 18:08 | #4 |
MCTS
|
|
|
05.02.2009, 18:37 | #5 |
Участник
|
Я сделал вот так:
Код: IF EXISTS(RarPath) THEN TmpShellReturnCode := SHELL(RarPath, всякие параметры) ELSE BEGIN CLEAR(BatFile); BatFile.TEXTMODE(TRUE); IF BatFile.CREATE(BatPath) THEN BEGIN BatFile.WRITE(путь к winrar.exe из настроек и параметры); BatFile.CLOSE; TmpShellReturnCode := SHELL(BatPath); IF ERASE(BatPath) THEN; END; END; RarPath - текстовая константа = 'C:\Program Files\WinRAR\WinRAR.exe' BatFile - переменная типа File BatPath - текстовая константа = 'c:\navexec.bat' Второй параметр shell, в котором передаются параметры запускаемого приложения не обязательно должен быть константой. |
|
06.02.2009, 08:36 | #6 |
Участник
|
С константами работает, щас глянул хелп и там действительно про это есть. Спасибо. Правда конечно кривовато в коде гвоздями прибивать пути к рару или бат файлу
|
|
06.02.2009, 09:28 | #7 |
Участник
|
Цитата:
где WshShell - Automation 'Windows Script Host Object Model'.WshShell Подробнее здесь: http://www.nextequalzero.com/2007/06/how-t...stead-of-shell/ и здесь: http://msdn.microsoft.com/en-us/libr...ky(VS.85).aspx |
|
06.02.2009, 13:57 | #8 |
Участник
|
точно, спасибо за идею, всё работает
|
|