#30726 - Tue Aug 30 2011 08:00 PM
Re: Использование TSLab API в SharpDevelop.
[Re: SergeySal]
|
stranger
Registered: Wed Dec 22 2010
Записи: 17
|
И какой версии должен быть Visual?
|
Наверх
|
|
|
|
#32032 - Mon Oct 10 2011 04:36 PM
Re: Использование TSLab API в SharpDevelop.
[Re: profit]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Огромное спасибо автору этого раздела за подробные и чёткие инструкции. Вот только у меня всё же возникла проблема - не удаётся в программе TSLab подключить откомпилированный индикатор из примера, т.е. не получается подключить dll файл созданный в пунктах 5.3 и 5.4. А конкретнее не получается выполнить шаг 5.5 - "5.5. Заходим в программу TSLab в редактор шаблона и смотрим на закладку Пользовательские индикаторы". Вот как раз закладка "Пользовательские индикаторы" у меня остаётся пустой. Хотя новенький dll файл, только что благополучно откомпилированный, у меня размещается в директории: "...\TSLab\Handlers\" автоматически. Дело в том, что все инструкции приведённые в статье выполнял очень скрупулёзно и пример с внешним сриптом на C# работает, а пример с индикатором нет. ![frown frown](/ubb/images/graemlins/default/frown.gif)
Отредактировано Physic (Tue Oct 11 2011 12:37 PM)
|
Наверх
|
|
|
|
#32057 - Tue Oct 11 2011 01:39 PM
Re: Использование TSLab API в SharpDevelop.
[Re: ViL]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Попробуйте любой другой индикатор. Попробывал ещё 2 других индикатора, которые скачал с этого же форума - результат тот же - новый индикатор в терминале TSLab не появляется в редакторе шаблона, во вкладке Пользовательские! ![frown frown](/ubb/images/graemlins/default/frown.gif) Хотя соответствующий dll файл размещаю строго так, как описано в начале этой темы, т.е. в директорию: "F:\Program Files\TSLab\Handlers". Т.е. видимо терминал просто почему то "не видит" соответствующий dll файл. Все инструкции я выполнял строго как описано в начале этой темы. Может кто нибудь попробует чисто механически пройти эти шаги и напишет работают ли у него пользовательские индикаторы?
|
Наверх
|
|
|
|
#32058 - Tue Oct 11 2011 02:27 PM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
Carpal Tunnel
Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
|
10 минут назад индюк делал, все работает. Там в примерах, один индюк реально не работает, полтора года назад разработчикам говорили, но походу, это спецом сделано, что б человек помучался и научился ![smile smile](/ubb/images/graemlins/default/smile.gif) Я через тот индюк то же проходил, суток двое сидел... Короче, возьмите индюк нормальный, к примеру из встроенных в тслаб http://www.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=8511#Post8511 , замените названия и компильните. Перезагрузите тслаб, должно появится.
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика» Дизраэли.
|
Наверх
|
|
|
|
#32094 - Wed Oct 12 2011 02:55 PM
Re: Использование TSLab API в SharpDevelop.
[Re: 777]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
10 минут назад индюк делал, все работает. Там в примерах, один индюк реально не работает, полтора года назад разработчикам говорили, но походу, это спецом сделано, что б человек помучался и научился ![smile smile](/ubb/images/graemlins/default/smile.gif) Я через тот индюк то же проходил, суток двое сидел... Короче, возьмите индюк нормальный, к примеру из встроенных в тслаб http://www.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=8511#Post8511 , замените названия и компильните. Перезагрузите тслаб, должно появится. К сожалению и с другим индикатором, так же загруженным с форума, та же ситуация - терминал TSLab "не видит" пользовательских dll файлов, хотя размещаю их в папке "D:\Program Files\TSLab\Handlers". Уже не знаю что и делать! ![frown frown](/ubb/images/graemlins/default/frown.gif)
|
Наверх
|
|
|
|
#32098 - Wed Oct 12 2011 04:19 PM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
Carpal Tunnel
Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
|
либо шарпдевелоп не той версии (старый), либо выбран NET Framework 2.0 в проекте, а не 3.5.
Должен быть Sharp Develop 3.2 или выше и ворк 3.5 и только он.
Отредактировано 777 (Wed Oct 12 2011 04:24 PM)
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика» Дизраэли.
|
Наверх
|
|
|
|
#32105 - Wed Oct 12 2011 10:25 PM
Re: Использование TSLab API в SharpDevelop.
[Re: 777]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
либо шарпдевелоп не той версии (старый), либо выбран NET Framework 2.0 в проекте, а не 3.5.
Должен быть Sharp Develop 3.2 или выше и ворк 3.5 и только он. Сегодня ещё один день ушёл безрезультатно - скомпилировать индикатор и добавить его в TSLab не удаётся (TSLab не видит dll)! ![frown frown](/ubb/images/graemlins/default/frown.gif) На самом деле, т.к. я только на той неделе первый раз скачал и установил ШарпДевелоп, то у меня были самые последние версии и ШарпДевелопа 4.1 и Фреймворка 4.0. После Вашего сообщения я подумал, что может быть свежие версии не работают ещё, как должны, и установил предыдущие версии (ШарпДевелоп 3.2 и ФреймВорк строго 3.5), как Вы и написали. Перед установкой более старых версий, свежие версии удалял во избежание конфликта версий. Но к сожалению, и предыдущие версии также не работают. При этом параметр Target Framework был установлен в ".Net Framework 3.5", т.е. строго так, как Вы и написали. Уже не знаю, на что пенять! ![frown frown](/ubb/images/graemlins/default/frown.gif) Может терминал TSLab у меня слишком свежий (версия 1.1.20.0), т.е. сырой. У Вас какая версия терминала? И вообще, что ещё можно сделать, что бы dll файлы начали восприниматься терминалом?
|
Наверх
|
|
|
|
#32107 - Thu Oct 13 2011 01:43 AM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
writer
Registered: Sun Nov 21 2010
Записи: 428
|
Выложите на форум DLL, я гляну в чем дело.
_________________________
Не пишите мне! Никому ничего делать не буду.
|
Наверх
|
|
|
|
#32113 - Thu Oct 13 2011 12:42 PM
Re: Использование TSLab API в SharpDevelop.
[Re: jhgjrht]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Выложите на форум DLL, я гляну в чем дело. А как файл выложить на форум? Кстати, Ваше предложение натолкнуло меня на идею попробывать открыть созданный dll файл индикатора в вспомогательной программе - "Dependency Walker" (программа для просмотра и анализа dll файлов). Эта вспомогательная прога показала, что в созданной dll есть ошибка и вывела строку описания этой ошибки: "Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module. Warning: At least one delay-load dependency module was not found."В другом окошке этой же проги есть список видимо других dll связанных с вновь созданной dll, так вот в этом списке напротив 2-х dll стоят вопросительные знаки и красным текстом написано: (?) GDIPLUS.DLL - Error opening file. The system cannot find the file specified (2).(?) GPSVC.DLL - Error opening file. The system cannot find the file specified (2).Наверное поэтому терминал TSLab не видит мои dll файлы, созданные в среде ШарпДевелоп. ![frown frown](/ubb/images/graemlins/default/frown.gif) Только не очень понятно, почему эта проблема возникает только у меня одного, хотя всё вспомогательное ПО я устанавливал строго по инструкциям! Есть ещё идея соответственно попробывать как то самому найти эти две не достающие dll, но тогда встанет вопрос, а каких версий должны быть эти dll и в какие директории они должны быть скопированы? Кстати, может быть Вы для эксперимента вышлите мне например на мэйл (serinfo@inbox.ru) Ваш какой нибудь самый обычный и, самое главное, работающий в терминале TSLab индикатор - dll, что бы я его мог посмотреть в терминале и удостовериться, по крайней мере, что проблема не с терминалом TSLab? А может даже заархивированную папку с готовым внутри проектом этого индикатора, что бы я сам мог попробывать откомпилировать этот dll файл - индикатор. А ещё лучше и то и другое - и откомпилированный dll файл, и заархивированную папку с проектом этого индикатора. Заранее огромное Вам спасибо! ![smile smile](/ubb/images/graemlins/default/smile.gif)
Отредактировано Physic (Thu Oct 13 2011 12:49 PM)
|
Наверх
|
|
|
|
#32115 - Thu Oct 13 2011 01:48 PM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
writer
Registered: Sun Nov 21 2010
Записи: 428
|
Опа как ![smile smile](/ubb/images/graemlins/default/smile.gif) Вы безусловно очень умный, но я бы порекомендовал Вам остановиться в Ваших изысканиях. Даже до "GDIPLUS.DLL" доходить было совсем необязательно. Чего доброго доберетесь еще до "hal.dll" и подумаете, что она несоответствующей версии, придется процессор менять. ![smile smile](/ubb/images/graemlins/default/smile.gif) TSLab не видит Ваши DLL только из-за несоответствия версии .net framework или если в программном коде индикатора Вы удалили что-то "ненужное". ыыыы
Attachments
WMA.rar (234 downloads)
_________________________
Не пишите мне! Никому ничего делать не буду.
|
Наверх
|
|
|
|
#32116 - Thu Oct 13 2011 01:48 PM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
TSLab
Carpal Tunnel
Registered: Sun Oct 17 2010
Записи: 8139
|
|
Наверх
|
|
|
|
#32118 - Thu Oct 13 2011 02:33 PM
Re: Использование TSLab API в SharpDevelop.
[Re: jhgjrht]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Опа как ![smile smile](/ubb/images/graemlins/default/smile.gif) TSLab не видит Ваши DLL только из-за несоответствия версии .net framework или если в программном коде индикатора Вы удалили что-то "ненужное". ыыыы Огромное Вам спасибо, что откликаетесь! Но к сожалению, мистика продолжается! ![frown frown](/ubb/images/graemlins/default/frown.gif) Терминал TSLab самой последней версии (1.1.20.0) не видит и Вашу dll. Попробывал в ШарпДевелопе откомпилировать Ваш код - так же без результатно. К тому же я, так как только начинаю осваивать среду ШарпДевелоп, то естественно сам ни одной строчки из примеров кодов не удалял и даже не притрагивался к ним. Задача была просто откомпилировать стандартный, работающий код в dll файл индикатора и затем посмотреть его на графике в терминале TSLab. Что касается не соответствия версии .net framework, то у меня установлена самая последняя версия - 4.0, хотя я уже пробывал её удалять и переустанавливать на предыдущую версию - 3.5. Результат был один и тот же! ![frown frown](/ubb/images/graemlins/default/frown.gif) У меня уже просто отчаяние начинается! ![frown frown](/ubb/images/graemlins/default/frown.gif)
|
Наверх
|
|
|
|
#32119 - Thu Oct 13 2011 03:10 PM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
writer
Registered: Sun Nov 21 2010
Записи: 428
|
Ну, отчаиваться не надо. Ранее Вы писали, что размещаете DLL с индикаторами в папку "D:\Program Files\TSLab\Handlers", убедитесь, что TSLab запускаете из "D:\Program Files\TSLab". Проверьте буквы названия "Handlers", может "H" кириллицей набрано, например. Проще эту папку заново создать. Тот индикатор, что я выложил должен появиться на закладке "MyIndicators" в окне редактора TSLab. Проверьте. Логи программы посмотрите. Ну если ничего не помогает, тогда "в морг". ![smile smile](/ubb/images/graemlins/default/smile.gif)
_________________________
Не пишите мне! Никому ничего делать не буду.
|
Наверх
|
|
|
|
#32138 - Thu Oct 13 2011 08:09 PM
Re: Использование TSLab API в SharpDevelop.
[Re: jhgjrht]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Ну, отчаиваться не надо. Ранее Вы писали, что размещаете DLL с индикаторами в папку "D:\Program Files\TSLab\Handlers", убедитесь, что TSLab запускаете из "D:\Program Files\TSLab". Проверьте буквы названия "Handlers", может "H" кириллицей набрано, например. Проще эту папку заново создать. Тот индикатор, что я выложил должен появиться на закладке "MyIndicators" в окне редактора TSLab. Проверьте. Логи программы посмотрите. Ну если ничего не помогает, тогда "в морг". То что буквы 'H' или 'a' в названии папки могли быть набраны кирилицей, это Вы безусловно правы, но это было самое первое, что я проверял (просто не перечислял это дабы не загромождать важную тему). К тому же на этой неделе я уже несколько раз полностью сносил и TSLab и SharpDevelop и Framework, пробывал их переустанавливать предыдущими версиями, не помогало, снова устанавливал новые версии. Когда прописывал установычные пути, за кодировкой следил строго, т.к. такую возможную ошибку с кодировками всегда держу в голове. Тут ещё один интересный момент вскрылся с той DLL, ссылку на которую Вы мне дали - в моей ОС Ваша DLL также оказалась не работоспособной, по сути пустой, т.к. моя вспомогательная прога Dependency Walker также показала (как и терминал TSLab), что у Вашей DLL имеется таже самая проблема, что и у моей, т.е. отсутствуют те две вспомогательные DLL. И описание ошибки было слово в слово таким же. Я начинаю подозревать, что как раз именно в этих DLL вся проблема и кроется. Ведь абравиатура DLL (Dynamic Link Library) в переводе на русский язык дословно переводится как Динамически Компануемая Библиотека (библиотека функций, классов, объектов), хотя не сомневаюсь, что Вы это и без меня отлично знаете. Соответственно динамическая компановка DLL в ОС может происходить с другими DLL, и может образовываться достаточно сложное и ветвистое дерево подключаемых DLL. При этом, если хотя бы одна из вспомогательных DLL входящая в требуемое дерево подключаемых dll будет отсутствовать, или будет находится не в нужной директории, или просто будет не той версии, которой должна быть, то наша Главная и Конечная DLL окажется фактически пустой и абсолютно не работоспособной в конкретной ОС на конкретной машине, где это дерево окажется повреждённым. Тут всё зависит от сложности программных технологий, применяемых разработчиками ПО. Здесь в нашем случае, судя по тому, что мне показывает моя вспомогательная прога - Dependency Walker как раз и образуются такие сложные DLL со сложными и ветвистыми деревьями из других вспомогательных dll. Кстати, то что Вы пишете про необходимость строгого соответствия установленной версии frame work (что бы она была строго версии 3.5), как раз и означает требование формирования правильного и корректного дерева вспомогательных dll подключаемых к нашей Главной DLL. Когда я учился в МГУ приходилось писать достаточно сложные многомодульные проги, часть модулей писал на С++ (математику), а визуализацию в среде BlackBox на языке Компонентный паскаль, при этом механизм dll использовал как промежуточное звено между разными языками программирования. Вспомогательную программу Dependency walker применял для отслеживания изменения имён в механизме DLL (при экспорте/импорте нужных мне функций (модулей) из одного языка в другой язык происходит небольшое изменение имён). В одном из окошек проги Dependency walker приводится список всех функций, которые импортированы в рассматриваемую dll, и вот Ваша DLL - индикатор, как и мои dll, созданные в среде ШарпДевелоп на моей машине оказываются абсолютно пустыми, т.е. без списка импортируемых функций и к тому же с двумя ошибками. Я написал это не для того, что бы "блеснуть", НЕТ, не в коем случае, а просто что бы объяснить, что не первый год в программировании, что "в теме" и что простые варианты с кирилицей с самого начала исключал. К тому же, наверняка, у кого то также может возникнуть полностью аналогичная проблема и этот материал (наша с Вами переписка) может оказаться кому то полезным. Хотя про кирилицу это Вы грамотно написали, т.к. такое вообще говоря может произойти, конечно, у кого угодно. Так же скорее всего правильно Вы написали про несоответствие версии фрэймворка, т.е. несоответствия дерева вспомогательных dll. Только что мне делать, если это я тоже опробывал - переустанавливал всё ПО на предыдущие версии и чётко контролировал на вкладке Compiling в свойствах проекта значение параметра Target Framework (установлено в ".NET Fremework 3.5"). Т.е. соблюдал всё, что Вы мне и писали, но пока ни чего не помогло! ![frown frown](/ubb/images/graemlins/default/frown.gif) Думаю, что надо каким то образом создать на моей машине дерево вспомогательных dll полностью аналогичное Вашему дереву, т.е. дереву установленному на Ваших машинах.
Отредактировано Physic (Thu Oct 13 2011 08:19 PM)
|
Наверх
|
|
|
|
#32140 - Thu Oct 13 2011 10:50 PM
Re: Использование TSLab API в SharpDevelop.
[Re: ViL]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Dependency Walker не показывает заивсимость для dll NET, .т.к. они в другом формате. Ну хорошо, Вам наверное лучше знать, поскольку я не профессиональный программер и, действительно, каких то тонкостей в профессиональном программировании могу не знать. Вопрос в другом - что я должен сделать, что бы Ваша система (связка терминала TSLab со средой программирования SharpDevelop) работала бы и у меня на 100% ?
|
Наверх
|
|
|
|
#32142 - Fri Oct 14 2011 12:51 AM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
writer
Registered: Sun Nov 21 2010
Записи: 428
|
Ух, скока букафф, хорошо в МГУ обучают. ![smile smile](/ubb/images/graemlins/default/smile.gif) Наберитесь терпения и ищите простое решение. Если TSLab запускается и работает, то все необходимое для него имеется, включая фреймворк и системные DLL. ![smile smile](/ubb/images/graemlins/default/smile.gif)
_________________________
Не пишите мне! Никому ничего делать не буду.
|
Наверх
|
|
|
|
#32149 - Fri Oct 14 2011 01:15 PM
Re: Использование TSLab API в SharpDevelop.
[Re: jhgjrht]
|
newbie
Registered: Mon Oct 10 2011
Записи: 43
|
Dependency Walker не показывает заивсимость для dll NET, .т.к. они в другом формате. Поговорил со своим другом - профессиональным программистом, он сказал, что Вы абсолютно правы. Он посмотрел Ваши и мои dll с помощью уже иной вспомогательной проги, зашёл ко мне на комп, и увидел, что всё установлено правильно и должно работать, соответственно через 3 минуты выяснилось, что всё работает. ![smile smile](/ubb/images/graemlins/default/smile.gif) Наберитесь терпения и ищите простое решение. Если TSLab запускается и работает, то все необходимое для него имеется, включая фреймворк и системные DLL. ФУУУХ, теперь наконец то и у меня заработало, вернее даже - оказывается, у меня всё работало с самого начала. Короче Вы абсолютно правы - надо было искать простое решение. Вот только не смешно. Я потерял целую неделю из за совсем крошечной неточности в инструкции на первой странице. Я просто забыл в какой стране живу и как у нас люди пишут инструкции. А именно на первой странице написано по русски: "5.5. Заходим в программу TSLab в редактор шаблона и смотрим на закладку Пользовательские индикаторы:" Вот я соответственно на вкладке " Пользовательские индикаторы " и пытался найти индикаторы из своих dll. Так до конца жизни и не нашёл бы, если бы друг не подсказал. А кроме этого не значительного недостатка, инструкция, конечно, хорошая.
|
Наверх
|
|
|
|
#32150 - Fri Oct 14 2011 01:34 PM
Re: Использование TSLab API в SharpDevelop.
[Re: Physic]
|
member
Registered: Tue Jul 21 2009
Записи: 152
|
Не могли бы вы точно указать откуда взят текст про индикатор? В документации написано следующее: Теперь если в TSLab открыть Редактор графиков, то новый индикатор появится среди существующих типов Конвертора. http://www.tslab.ru/docs/online/connectapi.htmИ не могли бы вы пояснить в чем все же была проблема что бы мы могли поправить документацию если это требуется.
Отредактировано Denis (Fri Oct 14 2011 02:38 PM)
|
Наверх
|
|
|
|
|
|