Этот форум переведен в режим чтения, просим обсуждать вопросы на форумах MQL4.community и MQL5.community
Вопрос про DLLК списку тем | 1 2 |
|
raxbat
23.10.2007 14:14
Подсоединил DLL к эксперту. С путями всё ок. При вызове финкции из DLL ошибка:
2007.10.23 13:08:14 Expert LD EURUSD,H1: cannot call function 'ConnectSQL' from dll 'MSSQLprj.dll' (error 127) #import "MSSQLprj.dll" string ConnectSQL(string sServer, string sDB); bool DisconnectSQL(); void ExecuteSQL(string sDatiSQL); #import ... int start() { ....... ConnectSQL("IT_LD_BIG", "fx"); ..... ? |
|
Slawa
24.10.2007 14:23
В Вашей dll нет функции ConnectSQL. Ошибка 127 об этом и говорит "The specified procedure could not be found."
Возможно, имя "испорчено". Заведите в Вашем проекте def-файл и перечислите в нём экспортируемые функции |
|
Daniil
24.10.2007 23:47
raxbat, Каким компилятором пользуетесь? Приведите объявление функции 'ConnectSQL'
|
|
Laser
16.01.2008 15:50
У меня тоже вопрос по DLL
А может и более общий, пока не ясно. Кодом библиотеки cоздаю МТС в виде объекта c методами, полями. Обычный объект, в общем, глобально видимый и с глобальным временем жизни. Создается он как классический Синглтон ( Singleton ). Создавал МТС именно по этому шаблону проектирования, понадеявшись на то, что с приходом нового тика и вызовом любой функции из библиотеки, смогу обновить- поднастроить ранее созданный в оперативной памяти объект. Но вся неприятность в том, что с новым тиким объект приходистся создавать заново, т.е синглтон не находя себя ранее созданного и настроенного, создает свеженький, нулевой вариант. Как сделать, чтобы настройки объектов не затирались? Есть ли способ сделать это без сохранения состояния объекта в файл по завершении его настройки в соответствии с пришедшим тиком и загрузки ранее сделанных настроек по приходящему тику? |
|
pxx
20.01.2008 21:27
Скорее всего, ошибка в коде.
Должно работать без проблем. |
|
Valio
21.01.2008 00:47
для начала просто почитать книжку по Си, и осмыслить содеянное .. мест масса,
можно здесь к примеру: http://cylib.iit.nau.edu.ua/Books/Prog/C++/VisualC++/beginers/visual/12.html |
|
Laser
23.01.2008 13:10
для начала просто почитать книжку по Си, и осмыслить содеянное .. мест масса, можно здесь к примеру: http://cylib.iit.nau.edu.ua/Books/Prog/C++/VisualC++/beginers/visual/12.html Спасибо за книгу. Она мне даже понравилась поначалу. Может быть поясните пару непонятых в ней моментов? Меня заинтересовала возможность объявленные переменных общими для нескольких процессов. При компиляции строки предложенного там решения #pragma comment(lib,"msvcrt" "-SECTION:.myseg,rws"); выдается ошибка. |
|
Laser
23.01.2008 13:26
Скорее всего, ошибка в коде. Должно работать без проблем. Меня смущает один момент при отладке библиотеки: в функции dllMain постоянно происходит DLL_THREAD_ATTACH DLL_THREAD_DETACH. |
|
Valio
25.01.2008 15:13
В зависимости от постановки задачи есть множество путей хранения общ. переменных, к примеру простецкий и христоматийный CreateFileMapping/Map-UnmapViewOfFile .. можно и через разделяемую память (уже где-то обсуждалось на форуме), можно через каналы, если это просто синхронизация между процессами, то использование семафоров, можно глобально распредлить volatile-переменные, так и блоки памяти, если известны id окон, можно и просто сообщениями. |
|
Laser
31.01.2008 14:50
В зависимости от постановки задачи есть множество путей хранения общ. переменных, к примеру простецкий и христоматийный CreateFileMapping/Map-UnmapViewOfFile .. можно и через разделяемую память (уже где-то обсуждалось на форуме), можно через каналы, если это просто синхронизация между процессами, то использование семафоров, можно глобально распредлить volatile-переменные, так и блоки памяти, если известны id окон, можно и просто сообщениями. Когда есть много окон, процессов и всего прочего.. Но ведь у меня до предела простой случай. Окно инструмента одно, к нему прикреплен соеетник- один, к нему dll- ка - одна в ней функция- одна))))) та функция вызывает указатель на синглтон-объект. Ну а что дальше.. именно с этого я и начинал. Все что написано безусловно полезно и нужно и каналы с семафорами в том числе, но я немного почитав про это делаю вывод что проблема в другом, но в чем, остается непонятным. |
|
Valio
10.02.2008 17:48
Меня заинтересовала возможность объявленные переменных общими для нескольких процессов. Мне кажется автор не четко понимает что и для чего он хочет. Есть способы решения, а есть инструменты для, что я и предложил. |
К списку тем
| 1 2
Скачай MetaTrader 5 (300 Кб, веб-установщик) — новый терминал для финансовых рынков
