問題タブ [jacob]
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.
java - JACOB SafeArray getDoubles() メソッドの使用
Excel ワークブックから double 値のベクトルを抽出しようとしています。Excel は 1 次元配列ではなく、多次元配列 (次元数は 2) を返すように見えます。
Excel から取得したデータは SafeArray 形式です (Variant も使用できますが、基本的には同じ問題です)。
SafeArray 内のすべての値をループする必要なく、doubles 配列を Java オブジェクトに抽出する高速な方法を探しています。
SafeArray のメソッドを見ると、getDoubles(int sa_idx, int nelems, double[] ja, int ja_start) があります。
明らかにドキュメンテーションはゼロであり、このメソッドを使用しようとしても結果が得られなかったため、このメソッドが何をするかを判断できません。
ありがとう。
java - Jacob jar を使用して Outlook から PST を切断または削除したい
メッセージを保存するためにJacob jarファイルを使用しています。pst を接続するには、以下のコードを使用しています。
Outlook plz から PST ファイルを削除または切断したいのですが、この機能を実現する方法を教えてください。
よろしく、 カシフ
java - JacobによるJavaアプリケーションとMicrosoftアプリケーション間の同期
私の Java アプリケーションでは、Jacob ライブラリを使用して Microsoft Excel に接続しています。すべて問題ありませんが、Jacob ライブラリを使用して Excel ページで変更が発生したときに com イベントをキャッチする方法がわかりません。たとえば、私のプロジェクトでは、データベースに接続してテーブルの値を取得し、これらの値を Excel ページのセルにコピーします。セルの値が変更されると、テーブルの値も変更されます。それは、Jacob による Java と Microsoft Excel アプリケーション間の同期が必要です。
java - JACOBを介してJavaでVBScript(WMI)メソッドによって設定された出力パラメーター値を取得する
JACOB-JavaCOMブリッジライブラリを使用してVBScriptをJavaに変換しようとしています。VBScriptの「Create」メソッドはそのメソッドの[out]paramを受け入れ、メソッドの実行時にそれを設定します。JACOBを介してそれを取得する方法がわかりませんでした。
問題のVBScript:
intProcessIDは、メソッド実行後に設定される[out]パラメータです。(APIコントラクトを作成します)
変換されたJavaコード(不完全で、デモンストレーション用にわずかに変更されています):
いくつかのポインタまたは関連するコードを提供できれば素晴らしいと思います。必要に応じてもっと聞いてください。前もって感謝します。
java - iTunesDLLを呼び出すJavaコードをCom4jの使用からJacobに変換する
私は現在、Com4jを使用してJavaアプリからiTunesと通信していますが、残念ながら64ビットJavaでは動作せず、動作しないように見えるため、代わりにJacobと呼ばれる代替手段を使用しようとしています。
どちらのライブラリもDLLからJavaクラスを生成するためのツールを提供し、結果のクラスは非常に似ており、ほとんどのコードを変更するのは簡単ですが、サブタイプを見つける方法に失敗しています。
どちらのライブラリもIITPlaylistクラスとIITSUerPlaylistクラスを作成しましたが、com4jのみがqueryInterfaceクラスを提供し、IITUserPlaylistは実際にはIITPlaylistのサブクラスではありません。
また、com4jはisメソッドを提供しますが、jacobは提供しません
誰もがこれらの問題を解決する方法を知っていますか?
編集:ある程度の進歩はありましたが、まだ機能していません。クラスのGUID(中括弧を含む)を取得するQueryInterfaceメソッドがあります。jacobgenを実行したときに作成されるjacobgenlog.txtファイルを見て、GUIDを見つけました。 iTunes実行可能ファイル
次に、これはサブクラスに関連することを意図した別のDispatchオブジェクトを返しますが、Iveが行った単純なキャストは無効です、失敗したステップは何ですか?
is()機能は、種類をチェックすることで置き換えられます
作業中のスパナは、jacobgen getKind()メソッドが新しいインターフェイスを返そうとするため無効なJavaであり、もちろんインターフェイスをインスタンス化できないため、次のように変更する必要がありました。
ITPlayListKindは
に
IITUserPlaylist内
に
これは私によるオリジナルのアイデアではありませんでした。私はhttp://dot-totally.co.uk/software/itunescon/からアイデアを得ました。これは、jacobgenによって作成されたiTunesクラスの修正バージョンのようです。多くの場合、jacobgenで生成されたクラスを使用することにしました。
java - JACOB でアクティブな MS Word ウィンドウを変更するにはどうすればよいですか?
私はJACOBライブラリを使用しています。の新しいインスタンスを作成して、activeXComponent("Word.Application")ファイルを開くことができます。既に開いているファイルのインスタンスを取得するにはどうすればよいですか?
MS Word マクロではWindows("name.doc").Activate、「name.doc」はファイル名を表します。これはJACOBでどのように行うことができますか?
java - JACOB を使用した NoSuchMethodError
Java プログラムで JACOB を使用して動作させていますが、ITTrackCollection から ITTrack を取得しようとするたびにエラーが発生します。
これはエラーを与える行です:
これはエラーです:
a は ITTrack の配列リストで、t は ITTrack コレクションです。t には間違いなく 2 つ以上の ITTrack があります。
ありがとう
java - コントロールで自動化が許可されていない場合 (com4j/jacob)、Java を介して ActiveX メソッドを呼び出す方法は?
Java を介して自動化を許可しない ( IsInvokeAllowedtrue を返すように実装されていない) ActiveX コントロールに統合する必要があります。
これまでのところ、私の研究で COM 統合に最適な Java ライブラリはcom4jとjacobです。
自動化が許可されていないコントロールでメソッドを呼び出そうとすると、自動化が機能するコントロールでメソッドを呼び出しているときに致命的なエラー例外が発生します。
(com4j/jacob/other を介して) Java で自動化できない ActiveX オブジェクトのメソッドを呼び出す方法はありますか?
残念ながら、ActiveX オブジェクト ベンダーにコントロールの自動化を有効にするという選択肢はありません。
java - Java Desktop.browseは、「アクティブなアクティベーションコンテキストで要求されたルックアップキーが見つかりません」を返すことがあります
この問題は私にとってランダムに発生しているように見えるので、私は本当に苦労しています。私が電話するとき、
Desktop.browse("some url");
InternetExplorerは表示されません。例外メッセージは次のとおりです。
要求されたルックアップキーは、アクティブなアクティベーションコンテキストで見つかりませんでした。
発生すると、マシンを再起動するまで一貫して発生しますが、最終的には再び発生します。
この問題が発生していると思われるワークステーションは、InternetExplorer8がデフォルトのブラウザとして設定されたWindowsXPを実行しています。
編集:Internet Explorerを直接開いて、問題のURLに移動すると、正常に機能することを忘れました。
EDIT2:これは、Desktop.browseが呼び出され、少なくとも15分後に再度呼び出された場合に発生するようです。アプリケーションを再起動すると、問題が解決したようです。
java - Jacob ブリッジ (COM/ActiveX) を使用して列挙値を渡す
ジェイコブを使用して列挙値を渡す方法があるかどうかは誰にもわかりませんか?
enumVal1またはenumVal2として渡したいVariantです。