0

X-planeとシミュレーション値を持つ他のPCとの間でデータグラムを送受信するプログラムがあります。このコードはx-plane9でうまく機能しますが、x-plane 10に変更すると、x-planeと通信しなくなります。ソケットを開き、x-planeとsimからUDP経由で共有メモリを介してデータを送受信します。私はx-plane9でこれらすべてを処理するプラグインを持っています。これはx-plane9で動作するために使用された方法ですが、x-plane10では動作しません。x-planeが接続を確立するのに気づきましたが送信されているデータを受信します。それで、x-plane 10と互換性を持たせるためにコードに関係があるかどうか誰かが知っていますか?ありがとう。

編集:調査の結果、共有メモリがシミュレーション値をx-plane 10に送信していないことがわかりましたが、x-plane9でどのように機能するのでしょうか。共有メモリのアドレスを指すポインターがnullになることがわかります。これは、終了時にx-plane10およびx-plane10がクラッシュすることに関連するものですか、クラッシュログにいくつかの例外c000005が表示されます。誰かがこのハードルを乗り越えるためにこれまたはある種のアイデアで私を助けてくれますか?

Edit2:共有メモリの問題:ハンドルがnullかどうかをチェックする関数があり、x関数ではこのハンドルが使用され、ハンドルはどこにも閉じられていないが0と表示されるため、同じメモリが必要です。 x関数でハンドルを作成しましたが、以前は5780であったサイズに約17500サイズが割り当てられています。このため、メモリの問題が発生しないかどうか知りたいです。問題は解決しましたが、すべてがx-plane9で動作するために使用されています。なぜ10ではないのでしょうか。

4

1 に答える 1

0

nullかどうかをチェックするハンドルを作成する関数があり、x関数ではこのハンドルが使用されます。ハンドルはどこにも閉じられていないため、同じメモリが必要ですが、0と表示されます。x関数でハンドルを再作成しました。しかし、現在は以前の5780に約17500のサイズが割り当てられています。このため、メモリの問題が発生しないかどうか知りたいです。問題は解決しましたが、すべてがx-plane9で動作するために使用されています。なぜ10ではないのでしょうか。

于 2013-01-28T18:24:34.353 に答える