DLLから関数をインポートする際の問題解決を支援します。 - ページ 8 12345678910 新しいコメント Сергей 2009.09.07 22:20 #71 Googleを読んでみると、stdafx.hについては正しいようです :-)) まあ...そうだな...生きて学ぶ:-) Андрей 2009.09.07 22:45 #72 はい、そうです。 最初のリンクに必要なものがすべて含まれていることがかなりあります。 Сергей 2009.09.07 23:16 #73 興味深いことに、Bilder 6 では stdafx.h ファイルに対して誰も悪態をつかず、たった 17 回の警告でファイルの重さは半分になりました。 うーん、そうだなぁ...。 現在、2つの一見動作しているように見えるライブラリがあります :-)。データを見ながら、チェックしていきたいと思います。本当に良い結果を期待しています :-))) Сергей 2009.09.08 07:01 #74 jartmailru писал(а)>> あの...まあ、なんというか、プロジェクトに全部の ファイルを入れなければならないのですが 送ってくれたこと . 正直なところ、思いもよらないことです。 ライブラリ*にあるファイル群からどのファイルを選ぶか を追加することにしました。 h-filesで自動的にプルアップされているのでは?しかし、最初にsvd.cppファイルだけでコンパイル・リンクしたときは、externを追加するまではエラーが出なかったのです。svd.cppはそのhファイルへのリンクがあり、他のhファイルを参照し、それらは同名のcppファイルを使用しています。思った通り、理にかなっているようだ。ただ、私が完全にバカだと思われないように、少し自分を正当化したいのです :-)).そういう意見が出ると残念です:-))。冗談です :-)) Андрей 2009.09.08 09:36 #75 boysn >> : hファイル経由で自動的にプルアップされているのでは?しかし、最初はsvd.cppファイルだけを使って、コンパイルしてスリンキングしたところ、externを追加するまでエラーは出ませんでした。svd.cppはそのhファイルへのリンクがあり、他のhファイルを参照し、それらは同名のcppファイルを使用しています。思った通り、理にかなっているようだ。ただ、私が完全にバカだと思われないように、少し自分を正当化したいのです :-)).そんな意見を言われると、残念です :-)) 。冗談です :-)) そんな失敗をしないためにも、これを知っておく必要があります。 * ファイルを.CPP / .Hに分割する理由 * 関数宣言と宣言の違いについて * なぜインライン/テンプレートキーワードが必要なのか? * クラス宣言の内部で関数を宣言するとどうなるか * コンパイルとリンクの目的 * .OBJ / .LIB / .DLL / .EXE の区別と目的 * スタティックリンクとダイナミックリンク * リンカーエラーとは=未解決の関数 * リンカーエラー=マルチプルシンボルとは * リンカがバイナリファイルを構築する方法 * エクスターンとは . そこで、どこかにあるのでは? TheXpert 2009.09.08 09:46 #76 jartmailru >> : * 関数宣言と宣言の違い。 まあ、宣言と申告は同じことなんですけどね :)。 declaration -- 定義。 Сергей 2009.09.08 10:13 #77 そうですね...自分が間違っていたことに気づいた...。大丈夫です、勉強しますから...。 受信DLLについて...残念ながら、今のところ私の期待には応えられていません :-) 、つまり、確かにすぐにはうまくいきませんでした。原則的にすぐに手に入るのは非常にありがたいことです。 残念ながら、奇跡は起きない...。:-) 3x3の正方行列を入力として与えてみた。出力がどうあるべきかは、例で知っています。残念ながら、出力はゼロの特異値を持ち、ベクトルの出力行列は特異値を持つ。 すなわち、何かが行われているようだが、それが何であるかがわからない。私が理解した限りでは、DLL内に出力情報を書き込むことは不可能なのですが・・・。print("a["+i+"]", a[i]) のように、表示されないから......。このスレッドの一番最初の例から判断すると...です。 そこにはprintf("GetDoubleValue takes %.8lfn",dpar) という関数が あったのです。 メタトレーダーのログに情報は出力されず、関数の戻り値(return)のみが表示された ということは、私の理解では、この方法ではデバッグできないのですね? それとも、私がまた失敗したのでしょうか? 今、DLLプロジェクトではなく、exeプロジェクトを作ろうとしているのですが、echeプロジェクトの方がデバッグしやすいと言われたからです...。 WinMain関数がそこに表示され、私のプロジェクトをexeプロジェクトに正しくドッキングさせる方法がわからないのですが...。 それに、どの機能を出力して、どのツールでデバッグするのが良いのか、まだ理解していないんです...。今、アルハンゲルスキーを読んでいるのですが・・・。 Андрей 2009.09.08 10:19 #78 TheXpert >> : まあ、宣言も発表も同じことなんですけどね :) declaration -- 定義。 間違えてくれてありがとうございます。英語で知っている :-)。 Андрей 2009.09.08 10:22 #79 boysn >> : しかし、そこにWinMain関数が表示され、私のプロジェクトとecheプロジェクトを正しくリンクさせる方法がまだ分かっていません...。 それに、どの出力関数やツールをデバッグすればいいのか、まだ分かっていない...。今、アルハンゲルスキーを読んでいるのですが・・・。 そして同志よ、3対3のマトリックスとデバッグ出力でテストコードを書けば、すべてがうまくいくのです。 主なものは、printf()のための*コンソール*アプリケーションが必要であることです。 Сергей 2009.09.08 10:25 #80 はい、やってみます...。 12345678910 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
Googleを読んでみると、stdafx.hについては正しいようです :-))
まあ...そうだな...生きて学ぶ:-)
はい、そうです。
最初のリンクに必要なものがすべて含まれていることがかなりあります。
興味深いことに、Bilder 6 では stdafx.h ファイルに対して誰も悪態をつかず、たった 17 回の警告でファイルの重さは半分になりました。
うーん、そうだなぁ...。
現在、2つの一見動作しているように見えるライブラリがあります :-)。データを見ながら、チェックしていきたいと思います。本当に良い結果を期待しています :-)))
あの...まあ、なんというか、プロジェクトに全部の ファイルを入れなければならないのですが
送ってくれたこと
.
正直なところ、思いもよらないことです。
ライブラリ*にあるファイル群からどのファイルを選ぶか
を追加することにしました。
h-filesで自動的にプルアップされているのでは?しかし、最初にsvd.cppファイルだけでコンパイル・リンクしたときは、externを追加するまではエラーが出なかったのです。svd.cppはそのhファイルへのリンクがあり、他のhファイルを参照し、それらは同名のcppファイルを使用しています。思った通り、理にかなっているようだ。ただ、私が完全にバカだと思われないように、少し自分を正当化したいのです :-)).そういう意見が出ると残念です:-))。冗談です :-))
hファイル経由で自動的にプルアップされているのでは?しかし、最初はsvd.cppファイルだけを使って、コンパイルしてスリンキングしたところ、externを追加するまでエラーは出ませんでした。svd.cppはそのhファイルへのリンクがあり、他のhファイルを参照し、それらは同名のcppファイルを使用しています。思った通り、理にかなっているようだ。ただ、私が完全にバカだと思われないように、少し自分を正当化したいのです :-)).そんな意見を言われると、残念です :-)) 。冗談です :-))
そんな失敗をしないためにも、これを知っておく必要があります。
* ファイルを.CPP / .Hに分割する理由
* 関数宣言と宣言の違いについて
* なぜインライン/テンプレートキーワードが必要なのか?
* クラス宣言の内部で関数を宣言するとどうなるか
* コンパイルとリンクの目的
* .OBJ / .LIB / .DLL / .EXE の区別と目的
* スタティックリンクとダイナミックリンク
* リンカーエラーとは=未解決の関数
* リンカーエラー=マルチプルシンボルとは
* リンカがバイナリファイルを構築する方法
* エクスターンとは
.
そこで、どこかにあるのでは?
* 関数宣言と宣言の違い。
まあ、宣言と申告は同じことなんですけどね :)。
declaration -- 定義。
そうですね...自分が間違っていたことに気づいた...。大丈夫です、勉強しますから...。
受信DLLについて...残念ながら、今のところ私の期待には応えられていません :-) 、つまり、確かにすぐにはうまくいきませんでした。原則的にすぐに手に入るのは非常にありがたいことです。
残念ながら、奇跡は起きない...。:-)
3x3の正方行列を入力として与えてみた。出力がどうあるべきかは、例で知っています。残念ながら、出力はゼロの特異値を持ち、ベクトルの出力行列は特異値を持つ。
すなわち、何かが行われているようだが、それが何であるかがわからない。私が理解した限りでは、DLL内に出力情報を書き込むことは不可能なのですが・・・。print("a["+i+"]", a[i]) のように、表示されないから......。このスレッドの一番最初の例から判断すると...です。
そこにはprintf("GetDoubleValue takes %.8lfn",dpar) という関数が あったのです。
メタトレーダーのログに情報は出力されず、関数の戻り値(return)のみが表示された
ということは、私の理解では、この方法ではデバッグできないのですね? それとも、私がまた失敗したのでしょうか?
今、DLLプロジェクトではなく、exeプロジェクトを作ろうとしているのですが、echeプロジェクトの方がデバッグしやすいと言われたからです...。
WinMain関数がそこに表示され、私のプロジェクトをexeプロジェクトに正しくドッキングさせる方法がわからないのですが...。
それに、どの機能を出力して、どのツールでデバッグするのが良いのか、まだ理解していないんです...。今、アルハンゲルスキーを読んでいるのですが・・・。
まあ、宣言も発表も同じことなんですけどね :)
declaration -- 定義。
間違えてくれてありがとうございます。英語で知っている :-)。
しかし、そこにWinMain関数が表示され、私のプロジェクトとecheプロジェクトを正しくリンクさせる方法がまだ分かっていません...。
それに、どの出力関数やツールをデバッグすればいいのか、まだ分かっていない...。今、アルハンゲルスキーを読んでいるのですが・・・。
そして同志よ、3対3のマトリックスとデバッグ出力でテストコードを書けば、すべてがうまくいくのです。
主なものは、printf()のための*コンソール*アプリケーションが必要であることです。