QuikConnect

Описание

QuikConnect(String) - установления связи AmiSharp с терминалом QUIK. В терминале QUIK должны быть разрешены внешние транзакции. Для корректной работы функции UAC в Vista/Windows 7 должен быть отключен.

Параметры

Строка. Полный путь к каталогу, в котором установлен INFO.EXE, с которым устанавливаем соединение. Путь должен заканчиваться символом '\' и не содержать имя исполняемого файла info.exe.

Возвращаемое значение

"0" - ошибка, "1" - успешно

Пример использования

  1. Установить связь Amisharp с терминалом QUIK находящемся в каталоге C:\QUIK

    if (AmiSharp.QuikConnect("C:\\QUIK\\") == "0")
              error(AmiSharp.GetErrorName());
  2. Получить путь к квику в настройках, проверить его правильность, попробовать исправить, если возможно и установить связь Amisharp с QUIK: 

    QUIK_Path = ParamStr("QUIK Path","c:\\trade\\quik\\");
    // Нормализуем каталог QUIK
    if (StrToLower(StrRight(QUIK_Path,8)) == "info.exe")
         QUIK_Path = StrLeft(QUIK_Path,StrLen(QUIK_Path)-8);
    if (StrRight(QUIK_Path,1) != "\\")
         QUIK_Path += "\\"; // Соединяемся if (AmiSharp.QuikConnect(QUIK_Path) == "0")
           error(AmiSharp.GetErrorName());
  3. Пример переключения между разными терминалами из языка autoit:

    ; Осуществляет подсоединение Dll к указанному териминалу quik
    ; Возвращает "0" в случае ошибки и "1" при успехе
    Func AmiSharp_ConnectDllToQuik($InfoExePath)
        Static $Last_Quik_Connected = "?"
        Local $result

        $InfoExePath = NormalizeDirectory($InfoExePath)
        If $InfoExePath == $Last_Quik_Connected Then Return "1"
        If $AmiSharp.QuikIsDllConnected() == "1" Then
           $AmiSharp.QuikDisconnect()
           $Last_Quik_Connected = "?"
        EndIf

        $result = $AmiSharp.QuikConnect($InfoExePath)
        If $result == "1" Then $Last_Quik_Connected = $InfoExePath
        Return($result)
    EndFunc

     

  • Просмотров:: 3196