0

サンプル (.exe) を Rob Farber (リンク) から DLL に変換して、LABView から呼び出せるようにしようとしています。

例では と呼ばれglutInit(&argc, argv)ます。

glutInit(&argc, argv)DLLに入れられるもので代用できますか?

または、手動で値をargc設定argvできますか?

4

2 に答える 2

1

Argc は実行可能ファイルに渡される引数の数で、argv には実際の引数が含まれます。最初の値は単に整数で、2 番目の値はchar**です。したがって、glut 固有のプログラム引数をアプリケーションに渡す必要がない場合は、argc = 0 を渡しますchar**。glut 固有の引数を glutInit に渡す必要がある場合は、char**それらを含む を作成し (0 からではなくインデックス 1 から引数を配置)、argc を渡す引数の数に設定します。

于 2012-05-23T11:48:54.663 に答える
1

サンプル (.exe) を Rob Farber (リンク) から DLL に変換して、LABView から呼び出せるようにしようとしています。

LabVIEWのコンテキストで何かを実行したい場合、GLUTは絶対にダメです!LabVIEWは独自のイベントループと管理を行います。GLUT の MainLoop は、LabVIEW の内部と激しく衝突します。

私はLabVIEWモジュールのかなりの部分を書きましたが、率直に言って、LabVIEWのウィンドウの1つに統合するための適切なOpenGLコンテキストを作成する方法がわかりません.計測器について話すことさえありません.

考えてみれば、おそらく、独自のウィンドウとイベント処理を備えた独立して実行するスレッドを生成し、LabVIEW 側とローカル側の間にある種の通信チャネルを確立するでしょう。また、LabVIEW独自のメモリ管理が他のライブラリのメモリ割り当てと協力することにあまり熱心ではないことがわかったので、スレッドローカルストレージ(TLS)から独立したスレッド側にすべてを割り当てるようにします。(インターフェイス VI に見られる私の標準的なパターンの 1 つは、LabVIEW 配列の形式でメモリをモジュールに渡して作業することであり、モジュールは独自に何も割り当てません。)

于 2012-05-23T12:25:00.843 に答える