問題タブ [petrel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Ocean を使用してゾーンの属性を作成し、各ゾーンに値を設定する方法
ゾーンの属性を作成する方法がわかりません。
ocean - モジュール登録時の Slb.License のエラー
Ocean2010 ライセンスの Slb.License を参照するプロジェクトがあります。私は Petrel 2010.1 に対してビルドしています。
>Petrel 2010.1 (2010.2.2) を実行しているマシンにプラグインをインストールした後、registermodule.exe を使用してモジュールを登録します。Slb.License への参照を持つライセンス モジュールを除いて、すべてのモジュールが正しく登録されます。
RegisterModule.exe で次のエラーが表示されます:「指定されたモジュールを読み込めません。理由: ファイルまたはアセンブリを読み込めませんでした」 . 見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません. (HRESULT からの例外: 0x80131040)"
エラーのバージョン 2009.1.4.32700 は、私がビルドしている Petrel 2010.1 にパッケージされている Slb.License のバージョンです。Petrel 2010.2.2 に同梱されている Slb.License のバージョンは 2010.1.5.21635 です。
何かご意見は ?ライセンス モジュールを Petrel.exe.config に手動で追加すると、プラグインが正しく読み込まれ、正しく動作します。私が問題を抱えているそのRegisterModule.exe。
ありがとう。
編集
これは以前のビルドで機能していましたが、正確にはわかりません。
ocean - 相互作用するプラグインのデプロイ
共有アセンブリで宣言されたインターフェイスを介して相互作用するプラグインを実装したいと考えています。技術的には、いくつかのプラグインはエンティティを「メイン」プラグインに登録し(統合中)、次にこれらのエンティティを利用します(ペトレルセッション中)。
通常、各プラグインはストア上の個別の製品であるため、個別のPIPでインストールする必要があります。
プラグインは、共有アセンブリに関して下位互換性があります。
PIPインストーラーでこれを達成することは可能ですか?そしてどのように?
ocean - ドメインオブジェクトの「Changed」イベントが複数回発生しますか?
入力ツリーからさまざまなオブジェクトを表示するカスタム ウィンドウがあります。入力ツリーでオブジェクトがチェックされ、ウィンドウに表示されたら、オブジェクトの「Changed」イベントをサブスクライブします。私は、イベントに複数回登録していないことを絶対に確信しています。私が見ている問題は、色などのオブジェクトに変更を加えると、イベントが 3 回発生することです。
疑似コード:
編集:
何も変更せずに設定を開いて「OK」をクリックすると、3つのイベントが発生することに気付きました。したがって、実際には色の変更とは何の関係もないと思います。
私もDomainObjectChangeEventArgs PropertyNames
プロパティをチェックしようとしましたが、それは常に空です。
visual-studio-2012 - Visual Studio 11 Beta を使用した Ocean 2011 プラグインのビルド - InventorNet.dll の問題
Ocean 2011 プラグインをビルドするための VS11 ベータ版のテストを開始しました。非常にうまく機能しているようで、毎日の仕事に使用することを検討している十分な利点があります. (もちろん、Schlumberger が推奨する前に VS11 を使用して製品ビルドを作成することはありません。)
ただし、ブロッキングの問題が 1 つあります。
InventorNet.dll に依存するプロジェクトはビルドに失敗し、次のメッセージが表示されます。
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1546,5): 警告 MSB3270: ビルドされているプロジェクトのプロセッサ アーキテクチャ "MSIL" とのプロセッサ アーキテクチャの間に不一致がありましたリファレンス「InventorNet」、「AMD64」。この不一致により、ランタイム エラーが発生する可能性があります。構成マネージャーを使用してプロジェクトのターゲット プロセッサ アーキテクチャを変更し、プロジェクトと参照の間でプロセッサ アーキテクチャを調整するか、プロジェクトのターゲット プロセッサ アーキテクチャと一致するプロセッサ アーキテクチャの参照に依存することを検討してください。
CSC : 致命的なエラー CS0008: ファイル 'c:\Program Files\Schlumberger\Petrel 2011\InventorNet.dll' からメタデータを読み取り中に予期しないエラーが発生しました -- 'インデックスが見つかりません'*
他の依存関係から同様の警告が発行されるため、最初の警告は無害だと思いますが、エラーメッセージ (太字) を通過できません。どちらもおそらく、MSBuild で使用される .NET 4.5 (ベータ版) のより厳密なアセンブリ検証に由来します。私たちのプロジェクトは .NET 3.5 をターゲットにしています。
何らかの設定やその他のトリックでエラーを修正できるかどうか、またはシュルンベルジェから更新されたアセンブリが必要かどうかを誰かが知っていますか? (Google 検索では、VS2010 に関連するいくつかの同様のケースが見つかり、アセンブリ プロバイダーが問題を修正するためにアセンブリを再構築する必要があることを示しています。)
あるいは、この問題が Ocean 2012 によって修正されるかどうかを誰かが示すことができますか?
ocean - OceanWorkstep派生クラスのリファクタリング/名前変更
Ocean Workstep派生クラスが本番環境にリリースされると(そしてクライアントによって使用されると)、その名前、名前空間、およびアセンブリ名は、将来の更新のために効果的にロックされるようです(下位互換性を確保するため)。
Petrelプロジェクトが保存されると、ワークステップ参照はバイナリファイルClasses.ptd内にフルタイプ名(名前空間、クラス、厳密なアセンブリ名)として保存されます。ロード中に、正確なタイプ名(アセンブリバージョンが無視されているように見える)を解決できない場合、ワークフローエディターにワークステップが「ワークステップが利用できません」と表示されます。
私たちが遭遇したバイナリシリアル化の他のインスタンスでは、PetrelはSerializationBinder
登録済みを利用PetrelSystem.ProjectSerializationService
します-Workstepインスタンスではそうではありません。
Workstepクラス/名前空間/アセンブリの名前変更を容易にする他の方法はありますか?
なぜこの振る舞いは(もしあったとしても)あまり文書化されていないのですか?私たちは何かを誤解しましたか?
wix - Petrel プラグインを展開するための Windows Installer XML (WiX) テンプレートまたはガイドライン?
Petrel プラグインを展開するための Windows Installer XML (WiX) プロジェクトを作成するためのテンプレートやガイドラインはありますか?
古い *.vdproj/MSI 勧告の自然な後継者として WiX が選択されなかった理由はありますか?
Petrel プラグイン用の WiX を試した人はいますか? アイデアや経験の交換に興味があります。私は WiX に不慣れで、始めるのが難しいと感じています。
(トピック外: 「新しい」PIP パラダイムは無駄がなくシンプルですが、企業での使用には適していません。クライアントは、グループ ポリシーなどを通じて大規模な展開を容易にするために MSI を再パッケージ化できることを期待しています。別の投稿を投稿します。これについて質問します。)
ocean - グループ ポリシーなどによる PIP の大規模展開?
グループ ポリシーなどを使用して、Petrel PIP ファイル (プラグイン パッケージ) の大規模な展開を容易にする方法に関する推奨事項はありますか?
パッケージの内容 (プラグイン ファイル) は簡単ですが、ユーザー固有の PluginManagerSettings.xml ファイルは慎重に扱う必要があります。このコンセプトは、この目的のために MSI ファイルをカスタマイズして再パッケージ化できることを期待するクライアントにはあまり適していません。
シュルンベルジェは、この分野でいくつかのドキュメントと推奨されるベスト プラクティスを提供することをお勧めします。ドキュメントが存在する場合は、お詫び申し上げます。ポインタをいただければ幸いです。
ocean - ドメイン オブジェクト統計タブのプロパティにアクセスする方法は?
ピラーグリッドとホライズンの統計タブで値にアクセスできると助かります。その多くは自分で計算できますが、これらのプロパティがどこかに存在する場合は、代わりにそれらにアクセスできればはるかに簡単になります。
c# - SeismicLine2D 内の HorizonInterpretation2D によって特定のポイントの値 (振幅) を取得するにはどうすればよいですか?
入力パラメータは HorizonInterpretation2D と SeismicLine2D です。水平線を選択すると、ペトレルは画像 (赤) に示すように値を表示します。コードからこの値を見つけるには、サンプルの番号 (青) を取得する必要があります。サンプル数はどのように取得できますか?
スクリーンショット ソリューション [フル サイズ]: