Originally Posted By: Афанасий
Originally Posted By: Nektodron
В блоке внешний скрипт уже давно можно использовать dll наравне с cs файлами.


Следует, в таком случае, поправить статью, в обсуждении которой мы сейчас переписываемся. Там по-прежнему скрипт - это .cs-файл "в отличие от индикатора".


А также дописать туда, что есть различия при использовании 32- и 64-разрядной версии TSlab (или исправить ошибку).
Суть: одна и та же dll прекрасно работает с 32-разрядной версией и выдает ошибку в 64-разрядной.
Ошибка повторяется раз 5-6 при каждой попытке запуска и выглядит так:

c:\...\AppData\Local\TSLab\TSLab\temp\code4.cs(22,22) : error CS0234: Имя типа или пространства имен 'ScriptEngine' отсутствует в пространстве имен 'TSLab' (пропущена ссылка на сборку?)

Строка 22 файла code4.cs, где возникает ошибка:

public TSLab.ScriptEngine.Template.ExternalScriptItem.Handler XXX_script_h = new TSLab.ScriptEngine.Template.ExternalScriptItem.Handler();

TSLab.ScriptEngine в референсах упомянута, но в скрипте code4.cs строки "using TSLab.ScriptEngine" нет.


Если же запускать 32-разрядную версию, то все работает. Вероятно, потому что в этом случае строка 22 правильная:

public TSLab.XXX_namespace.XXX_class XXX_class_script_h = new TSLab.XXX_namespace.XXX_class();