Jump to content
Форум по продукции MOXA

Tim

Пользователи
  • Posts

    22
  • Joined

  • Last visited

Tim's Achievements

Участник

Участник (2/5)

0

Reputation

  1. Немного продолжу данную тему, компоненту делал сначала на C# потом в силу некоторых обстоятельств взял за основу пример на Visual C++ 2010 Express и пробую на ней компоненту запустить, Теперь вопрос вот кусок кода: void WINAPI InitMoxa() { //Загрузили DLL HMODULE hUsbpd = LoadLibrary(L"D:\mxio_net.dll"); //Экспортировали функции int (WINAPI*initMXEIO)(); (FARPROC &)initMXEIO = GetProcAddress(hUsbpd,"MXEIO_Init"); initMXEIO(); } выдает ошибку при запуске, когда доходит до запуска initMXEIO() - Необработанное исключение в "0x00000000" в "proba.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00000000". как можно загрузить MXEIO_NET.DLL, и воспользоваться функциями, кстати на C# все прекрасно работает
  2. тема уже наверное не актуальна, сделал внешнюю компоненту для 1С
  3. пробую записать передать функцию 0x02 с помощью примера на C#, устройство - E1210 в ответ выдает ILLEGAL_DATA_ADRESS . Куда копать ? адрес начальный задал 0001, кол-во каналов счит. - 4 В самой моксе включил Enable User-defined Modbus Addressing
  4. пытаюсь подключить метод - Wrap.Register("MXIO_NET.DLL", "MXEIO_Init", "r=l"); выдает ошибку - МодульПриложения(181)}: Ошибка при вызове метода контекста (Register): Неизвестная ошибка Wrap.Register("MXIO_NET.DLL", "MXEIO_Init", "r=l"); по причине: Неизвестная ошибка
  5. появилась мысль реализовать эту связку через MXIO.NET он ведь поддерживает win32 API , вот пример вызова немного другой библиотеки через 1с с помощью DynamicWrapperX Эксперименты с функциями Win 32 API в 1C Пример №3 Разрушаем окна (на примере PopUp меню) Регистрируем функции: Wrap = CreateObject("DynamicWrapperX"); Wrap.Register("USER32.DLL", "FindWindow", "i=ss", "r=l"); Wrap.Register("USER32.DLL", "DestroyWindow", "i=h", "r=l"); получаем дискриптор окна поиском по классу #32768 HWND = Wrap.FindWindow("#32768",""); Если HWND<>0 Тогда Wrap.DestroyWindow(HWND); КонецЕсли; Все менюшка исчезла Внимание DestroyWindow() не работает в потоке! Пример №4 Запрет запуска обработки или конфигурации более 1 раза (классический, мьютексы-взаимоисключения) Регистрируем функции: Wrap = CreateObject("DynamicWrapperX"); // создать мьютекс Wrap.Register("KERNEL32.DLL", "CreateMutex", "i=lls", "r=l"); // открыть мьютекс Wrap.Register("KERNEL32.DLL", "OpenMutex", "i=lls", "r=l"); // ожидание объекта Wrap.Register("KERNEL32.DLL", "WaitForSingleObject", "i=hl", "r=l"); // высвобождение Wrap.Register("KERNEL32.DLL", "ReleaseMutex", "i=h", "r=l"); // закрываем Wrap.Register("KERNEL32.DLL", "CloseHandle", "i=h", "r=l"); Объявляем переменные: MutexName = "MainErt"; MUTEX_ALL_ACCESS = 2031617; Проверяем на существование мьютекса в системе: HMutex = Wrap.OpenMutex(MUTEX_ALL_ACCESS,0,MutexName); Если HMutex=0 Тогда // создаем если не существует и высвобождаем на потом HMutex = Wrap.CreateMutex(0,1,MutexName); Wrap.ReleaseMutex(HMutex); Иначе Предупреждение("Обработка уже запущена работа невозможна!"); КонецЕсли;
  6. Добрый день Может кто подсказать в каком направлении копать что-бы получать данные с контроллера IoLogic 1210 из 1С 8.2. сразу признаюсь не очень силен в стандартах OPC
  7. День добрый почти месяц прошел , результаты такие : ошибки как в #18 больше не было, были небольшие сбои : A timeout was reached (120000 milliseconds) while waiting for the Moxa DA-Center service to connect. У вас никаких новостей нет ?
  8. # Model # - E1210 Ethernet IO Server IP # - 192.168.110.235 MAC Address - 00-90-e8-20-e3-7e # Name # - MOXA_ACTIVE_OPC_SERVER Serial No. # - 03129 Firmware - V1.4 Build11012820
  9. 5 суток прошло было одно зависание 30.09, сообщите как можно отладить проблему останова сервера. может ПО писать в лог проблемы при аварийном завершении ? приведу лог системы : Faulting application name: ACTIVEOPC.exe, version: 1.8.0.0, time stamp: 0x00000000 Faulting module name: WTOPCSVR.DLL, version: 9.0.1.9, time stamp: 0x4d0edded Exception code: 0xc0000005 Fault offset: 0x0000bc58 Faulting process id: 0xcfc Faulting application start time: 0x01cc0590f0e9eada Faulting application path: C:\Program Files (x86)\Moxa\ActiveOPC\Server\ACTIVEOPC.exe Faulting module path: C:\Program Files (x86)\Moxa\ActiveOPC\Server\WTOPCSVR.DLL Report Id: ae22fa34-72e4-11e0-b8f6-001517adde56 сообщите программистам может они что посоветуют
  10. 1-2 суток это не на новой версии имел ввиду, а на 1.11
  11. и у нас кстати E1210 - We discovered that the ioLogik W5340 reboot might cause the AOPC Server to shot down.
  12. даю знать как служба так и не хочет работать, вернее она запускается все хорошо, но вот попытка подключения клиентом не проходит. Если галку зарегистрировать как службу снять то при запуске клиента он вызывает приложение ActiveOPC и все работает. Только вот с периодичностью сутки - 2 суток сервер перестает отвечать на любые запросы. Я думаю может все таки у нас проблемы по учетной записи для запуска службы ? Есть какие-то инструкции по настройке учеток для запуска сервера как службы.
  13. Как службу сервер запустить не удалось на Windows 2008 server, но вот как приложение она работает. Но есть небольшие проблемы, при длительной работе сутки или больше, происходит подвисание приложения ActiveOPC, она как-бы работает но не обрабатывает сигналы с контроллера. Какой командой можно проверять работоспособность сервера ? хотим из клиентского приложения периодически опрашивать приложение сервер и если не отвечает перезапускать процесс
×
×
  • Create New...