Страница 1 из 1

1с77 + LangMF

Добавлено: 02 ноя 2014, 16:18
tecae
Доброго времени суток господа. Помогите разобраться.

Скрипт не возвращает управление вызываемому приложению.

Простой скрипт в файле Demo.mf

Код: Выделить всё

<#Module=mdlMain>
 Sub Load(cmdLine)
 Msgbox "test"
 End Sub
<#Module>
в 1с77

Код: Выделить всё

Процедура Выполнить()
	Скрипт = СоздатьОбъект("Atomix.LangMF"); // объект создается
	Скрипт.Command(КаталогИБ()+"Demo.mf");   // поступает на выполнение  + зависание 1с теряется с панели задач
	Сообщить("Выполнение закончено");        // не возвращает управление этой строке
КонецПроцедуры

После обновления екрана из контекстного меню рабочего стола появляется сообщение скрипта возвращается управление в 1с.

Почему скрипт автоматически не возвращает управление по завершению выполнения? Как это исправить?
Заранее благодарен за ответ?

Re: 1с77 + LangMF

Добавлено: 05 ноя 2014, 12:52
Atomix
появление происходит обычно под другими окнами
vbscript -> msgbox

появление происходит над другими окнами
vb6 -> sys.ext.msgbox

если же вы хотите чтобы просто управление возвращалось сразу обратно в вызывающий процесс, то можно так:

Код: Выделить всё

<#Module=mdlDemo>
Sub Load(cmdLine)
	sys.ontimer 10, "Test"
End Sub

Sub Test()
	sys.offtimer "Test"
	msgbox "ok"
	endmf
End Sub
<#Module>
плюс можно еще ждать в 1С окончания работы скрипта вот так:

Код: Выделить всё

    While Скрипт.state
        DoEvents
    Wend

Re: 1с77 + LangMF

Добавлено: 08 ноя 2014, 14:50
Atomix
Вообще лучше прикрепите полностью ваш скрипт и тогда я разберусь с проблемами.

Также можете попробывать новую бету вот отсюда

Скрипты работают со всеми возможностями, от Windows XP до Windows 10, а также под Wine (проверялось на Ubuntu 14.04).
Также если хотите чтобы созданный автономный EXE работал везде, надо при первом запуске на той машине, запустить его под правами администратора.

Re: 1с77 + LangMF

Добавлено: 09 ноя 2014, 16:54
Atomix
Меню поправил и ресурсы тоже, качайте новую бету.

Плюс еще у вас в примере ошибка, надо так
#Include "res\res.inc"