//--- load trans2quik.dll ---if((QTrader.QuikPath <> '') and (FileExists(IncludeTrailingPathDelimiter(QTrader.QuikPath) + DllName))) then
begin
QTrader.Tr2QHandle:= LibLoad(QTrader.QuikPath);
if(QTrader.Tr2QHandle > 0) then
begin
ErrCode:= 0;
ErrSize:=0;
ErrStr:= nil;
res:= T2QConnect(LPSTR(AnsiString(QTrader.QuikPath)), ErrCode, ErrStr, ErrSize);
case res of
TRANS2QUIK_SUCCESS: begin
QTrader.QConn:= true;
QTrader.DLLConn:= true;
res:= T2QSetConnStatCB(@pfConnStatusCB, ErrCode, ErrStr, ErrSize);
if(res = TRANS2QUIK_SUCCESS) then
begin
res:= T2QSetTransReplyCB(@pfTransReplyCB, ErrCode, ErrStr, ErrSize);
if(res = TRANS2QUIK_SUCCESS) then
begin
res:= T2QStartOrders(@pfOrderStatusCB);
if(res = TRANS2QUIK_SUCCESS) then
begin
res:= T2QStartTrades(@pfTradeStatusCB);
if(res <> TRANS2QUIK_SUCCESS) then
begin
Application.MessageBox(PWideChar('Не установлен колбэк статуса сделок!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
close();
end;
end else
begin
Application.MessageBox(PWideChar('Не установлен колбэк статуса ордеров!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
close();
end;
end else
begin
Application.MessageBox(PWideChar('Не установлен колбэк ответов!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
end else
begin
Application.MessageBox(PWideChar('Не установлен колбэк соединения!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
end;
TRANS2QUIK_FAILED: begin
Application.MessageBox(PWideChar('Непредвиденая ошибка при попытке соединения с QUIK!'
+ #10#13 +
'Возможно не влючён импорт внешних транзакций.'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_QUIK_TERMINAL_NOT_FOUND: begin
Application.MessageBox(PWideChar('Не найден терминад QUIK!' + #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_DLL_VERSION_NOT_SUPPORTED: begin
Application.MessageBox(PWideChar('Данная версия trans2quik.dll не поддерживается!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
//ANS2QUIK_ALREADY_CONNECTED_TO_QUIK:;
TRANS2QUIK_WRONG_SYNTAX: begin
Application.MessageBox(PWideChar('Синтаксическая ошибка ы пути к терминалу!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_QUIK_NOT_CONNECTED: begin
Application.MessageBox(PWideChar('Нет соединения терминала с сервером!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_DLL_NOT_CONNECTED: begin
Application.MessageBox(PWideChar('Не соединения библиотеки с терминалом!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_MEMORY_ALLOCATION_ERROR: begin
Application.MessageBox(PWideChar('MEMORY ALLOCATION ERROR!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_WRONG_CONNECTION_HANDLE: begin
Application.MessageBox(PWideChar('WRONG CONNECTION HANDLE!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
TRANS2QUIK_WRONG_INPUT_PARAMS: begin
Application.MessageBox(PWideChar('WRONG INPUT PARAMS!'
+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
end;
end else
begin
Application.MessageBox(PWideChar('Не загружена библиотека трансакций!'+ #10#13 +
'Программа будет закрыта.'),
PWideChar('ОШИБКА!'), MB_ICONHAND);
Close();
end;
end;
実際にこの不具合に対応した人はいるのでしょうか?
そうでしたし、今もそうです。数年前に書いたもので、当時から何も変えていない。特に問題はなかったと記憶しています。
マニュアルのコピーをご覧ください。
機能した、そして今も機能し続けている。数年前に書いたもので、当時から何も変えていない。特に問題はなかったと記憶しています。
マニュアルのコピーをご覧ください。
私が説明したことを試してみてください。
結果は私と同じでしょうか?
うまくいったらコードを教えてください。
私が説明したことを試してみてください。
結果は私と同じでしょうか?
動作するのであれば、コードを教えていただけますか?
コードは動くが、システムから引き抜かなければならず、その後は動かなくなり、使い物にならなくなる)。
APIマニュアルにT2QSubscribeOrders 関数が記載されていない。
ZZZ なるほど、前ページの機能ということですね)。いや、すべての機能をクリーンなAPIを使って自分で書いたので、インスタンスは参考程度にしかならない。
コードは動くが、システムから引き抜かなければならず、その後は動かなくなり、使い物にならなくなる)。
APIマニュアルにT2QSubscribeOrders 関数の記載がないのですが。
ZZZ なるほど、前のページからの機能ということですね)。いや、すべての機能をクリーンなAPIを使って自分で書いたので、インスタンスは参考程度にしかならない。
オッケーです。
しかし、自分のコードがどのように動くか理解していますか?
trans2quik.dll の動作に興味がある。
I.e. What does (step by step).
例えば、こんな感じです。
1.DLLをロードしています。
2.TRANS2QUIK_CONNECTの呼び出し
3.この関数が返すものを見てみましょう。
4.TRANS2QUIK_SUCCESSの場合、TRANS2QUIK_CONNECTION_STATUS_CALLBACKをコールする。
5.TRANS2QUIK_SUCCESSの場合、TRANS2QUIK_TRANSACTIONS_REPLY_CALLBACKを呼び出します。
などがありますが、どのようにされているのでしょうか?
などと、やっているのでしょうか?
こんな感じ。接続、確認、コルベックへの加入、トランザクションの転送。APIが小さいから、他に方法がない。あなただけが独自のAPIラッパーを持っていますが、私はAPIをクラスに没頭させています。
ところで、今日は日曜日で、市場は死んでいる。何も確認できない
こんな感じ。接続、確認、コルベックへの加入、トランザクションの転送。APIが小さいから、他に方法がない。あなただけが自分のAPIラッパーを持っていて、私はクラスの中にAPIを組み込んでいます。
ちなみに、今日は日曜日で市場はお休みです。何も確認できない
Quirk-demoが動作している(私が動作している)。
Qurickのデモが動作している(私が動作している)
デモがないんです。必要ない
ちなみに、Quickではない別の端末では、デモリクエストによる機能の一部が動作しなかったと記憶しています。
何が問題なのか理解できないのですが?SPBFUTとSRZ8、あるいは特定のシンボル(複数)のデータを使って、その前後のイベントを見るならともかく、123の何が問題なのか理解できないのですが。
何をやっているのか、なぜなのか、理解できない。
デモがないんです。必要ない
ところで、Quickではない別の端末では、デモビッドによる機能の一部が動作しなかったと記憶しているのですが。
よくわからないのですが、何が問題なのでしょうか?SPBFUTとSRZ8、あるいは特定のシンボル(複数)のデータを使って、その前後のイベントを見るならともかく、123の何が問題なのか理解できないのですが。
何をやっているのか、なぜなのか、理解できない。
ただ、間違えただけで、関数はすべてが正しいことを返しました。
123を試したところ...正しく表示されました。
だから、何か間違っているんじゃないかと......。
ただ、間違えただけで、関数が正しいものとして返してくれました。
123を試したところ...正しく表示されました。
だから、何か間違っているんじゃないかと......。
クイックジュニアとの連携なら、イマドキのデザインですね。クイックに乗り換えたとき、獣が何なのか確かめようと思ったのですが、ジュニアとは全く相性が良くありませんでした。
クイックジュニアと組んだら、変なデザインだな、とイミフです。クイックに乗り換えたとき、どんなものか見てみようと思ったのですが、ジュニアとの相性は全く良くありませんでした。
問題ないです。