Вверх ↑
Этот топик читают: Гость
Ответов: 355
Рейтинг: 2
#1: 2012-09-13 01:29:19 ЛС | профиль | цитата
Доброго времени суток.
Существует ли в HiAsm альтернативный (кроме как WinExec) способ запуска EXE (и прочих) файлов? Необходимо для проекта, так как при запуске определённого CMD скрипта, он запускается с ошибкой, хотя при ручном запуске - всё ОК.
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#2: 2012-09-13 05:03:44 ЛС | профиль | цитата
nickware, пример когда
nickware писал(а):
он запускается с ошибкой
где ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1536
Рейтинг: 176
#3: 2012-09-13 06:15:42 ЛС | профиль | цитата
nickware, в WinExec можно запускать приложение через точку doExec, а можно используя дуэт из doConsoleExec и doConsoleInput, всё как с консолью.
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 355
Рейтинг: 2
#4: 2012-09-13 11:38:31 ЛС | профиль | цитата
Tad, вот он: http://forum.hiasm.com/forum_serv.php?q=56&id=3307
ВНИМАНИЕ: скрипт, представленный в примере удаляет все системные точки восстановления Windows! Именно этот скрипт, при запуске из программы, сделанной на HiAsm, работает с ошибкой (shadowcopy не может быть вызван и выдаёт ошибку Initialization failure). Если запускать скрипт вручную, то всё нормально.
карма: 1

0
Ответов: 817
Рейтинг: 52
#5: 2012-09-13 12:40:07 ЛС | профиль | цитата
nickware,
code_29055.txt
У себя не запускал, т.к. у меня нет точек восстановления.
Но принцип тебе должен быть понятен

------------ Дoбавленo в 12.32:
можно упростить
Add(Button,10101545,182,287)
{
Left=10
Top=245
Data=String(wmic shadowcopy delete
)
link(onClick,625309:doEvent1,[])
}
Add(MainForm,2953706,21,105)
{
}
Add(WinExec,1755110,266,273)
{
FileName="cmd"
Point(doConsoleExec)
Point(doConsoleInput)
Point(onConsoleResult)
link(onConsoleResult,7705477:doCharset,[(310,286)(310,279)])
}
Add(Memo,8557210,385,273)
{
Left=5
Top=10
Width=375
Height=240
}
Add(Charset,7705477,322,273)
{
link(onCharset,8557210:doAdd,[])
}
Add(Hub,625309,231,287)
{
link(onEvent1,1755110:doConsoleExec,[])
link(onEvent2,1755110:doConsoleInput,[])
}

------------ Дoбавленo в 12.39:
Прошу прощения, код 29055 не верный
см. упрощенный вариант
карма: 1

0
файлы: 1code_29055.txt [634B] [176]
Ответов: 355
Рейтинг: 2
#6: 2012-09-13 13:50:27 ЛС | профиль | цитата
-= DriveR =-, к сожалению, и этот вариант не прошел: точки по прежнему остались. Команда не сработала.
Возможно, дело в том, что команда должна выполняться от имени администратора.
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#7: 2012-09-13 15:35:24 ЛС | профиль | цитата
nickware, а так
code_29056.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_29056.txt [206B] [211]
Ответов: 355
Рейтинг: 2
#8: 2012-09-13 15:37:02 ЛС | профиль | цитата
Tad, то же самое, к сожалению.
карма: 1

0
Ответов: 1133
Рейтинг: 81
#9: 2012-09-13 15:39:17 ЛС | профиль | цитата
nickware писал(а):
команда должна выполняться от имени администратора.

Схемы не смотрел(нету HiAsm-а под рукой), но могу предложить вариант с планировщиком задач. Он позволяет сделать ярлыки для файлов, которые будут выполнятся от администратора и без вывода сообщения UAC. Если не разберетесь сами, то вечерком когда буду дома, выложу пример.
карма: 2

0
Ответов: 16884
Рейтинг: 1239
#10: 2012-09-13 15:46:08 ЛС | профиль | цитата
nickware, значит так:
code_29057.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_29057.txt [211B] [231]
Ответов: 355
Рейтинг: 2
#11: 2012-09-13 15:47:33 ЛС | профиль | цитата
Tad, тоже нет.
tom-it, хорошо.
карма: 1

0
Ответов: 845
Рейтинг: 19
#12: 2012-09-13 16:09:21 ЛС | профиль | цитата
через вбс попробуй открытия
карма: 0

0
Ответов: 817
Рейтинг: 52
#13: 2012-09-13 16:17:34 ЛС | профиль | цитата
nickware,
code_29058.txt
Попробуй эту схему.
Что происходит при нажатии на кнопку?

(У меня данная схема работает на 100%)
nickware писал(а):
Возможно, дело в том, что команда должна выполняться от имени администратора.

Ну тут уж никуда не денешься.

Вы запускаете ваш батник в ручную, он требует повышения прав?
карма: 1

0
файлы: 1code_29058.txt [584B] [295]
Ответов: 355
Рейтинг: 2
#14: 2012-09-13 17:36:50 ЛС | профиль | цитата
-= DriveR =-, вот что вывело:
[flood]Microsoft Windows [Version 6.1.7600]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

C:UsersNickWareDesktop>ping 127.0.0.1

Обмен пакетами с 127.0.0.1 по с 32 байтами данных:
Ответ от 127.0.0.1: число байт=32 время<1мс TTL=128
Ответ от 127.0.0.1: число байт=32 время<1мс TTL=128
Ответ от 127.0.0.1: число байт=32 время<1мс TTL=128
Ответ от 127.0.0.1: число байт=32 время<1мс TTL=128

Статистика Ping для 127.0.0.1:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 0мсек, Максимальное = 0 мсек, Среднее = 0 мсек[/flood]

Нет, батник не требует повышения прав.
карма: 1

0
файлы: 1code_29059.txt [916B] [150]
Ответов: 817
Рейтинг: 52
#15: 2012-09-13 17:59:36 ЛС | профиль | цитата
nickware писал(а):
Нет, батник не требует повышения прав.

nickware писал(а):
вот что вывело:

Значит ранее предложенный мой облегченный вариант должен работать
см. что у тебя с батником
карма: 1

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)