QuikConnect
Описание
QuikConnect(String) - установления связи AmiSharp с терминалом QUIK. В терминале QUIK должны быть разрешены внешние транзакции. Для корректной работы функции UAC в Vista/Windows 7 должен быть отключен.
Параметры
Строка. Полный путь к каталогу, в котором установлен INFO.EXE, с которым устанавливаем соединение. Путь должен заканчиваться символом '\' и не содержать имя исполняемого файла info.exe.
Возвращаемое значение
"0" - ошибка, "1" - успешно
Пример использования
Установить связь Amisharp с терминалом QUIK находящемся в каталоге C:\QUIK
if (AmiSharp.QuikConnect("C:\\QUIK\\") == "0")
error(AmiSharp.GetErrorName());Получить путь к квику в настройках, проверить его правильность, попробовать исправить, если возможно и установить связь 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());Пример переключения между разными терминалами из языка 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
