問題タブ [comobject]

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.

0 投票する
0 に答える
586 参照

internet-explorer - COM オブジェクトからのスイッチで IE を起動する (PowerShell)

私は2つのことをする必要があります。1 つは、アドレス バーを非表示にするなどの特定の要素をロックダウンするまで IE を非表示で起動する方法で、2 番目は -noframemerging スイッチを使用して起動する方法です。これは、Citrix 環境で Web 関連の App-V パッケージを配信する際に役立ちます。

グループ ポリシーを使用してロックダウンを実現できることは承知していますが、IE が起動されている環境では、IE のインスタンスごとにロックダウンを設定する必要があり、すべてのブランケット設定としてではありません。

New-Object -ComObject InternetExplorer.Application を使用して、PowerShell で IE COM オブジェクトを作成し、さまざまなプロパティを設定してロックダウン環境を作成しました。可視プロパティを変更して IE を起動できます。

ただし、これにより、スイッチなしで iexplore.exe のインスタンスが起動されます。この COM オブジェクトをテンプレートとして使用して、-noframemerging スイッチで IE を起動することは可能ですか?

どんな助けでも大歓迎です。

乾杯、

マット

0 投票する
1 に答える
1806 参照

c++ - .net で com オブジェクト インスタンスを作成できません

管理者権限のないユーザーの .net で com オブジェクトを作成しようとすると、以下のエラーが発生します。

CLSID {6CA9DEBE-BA91-4E56-9CD3-D40FE0755204} を持つコンポーネントの COM クラス ファクトリは、次のエラーが原因で失敗しました。取得できません: 800704ec このプログラムはグループ ポリシーによってブロックされています。詳細については、システム管理者にお問い合わせください。(HRESULT からの例外: 0x800704EC)。

コードは次のとおりです。

動的 obj=null; try { try { var ComType = Type.GetTypeFromProgID("XenReports.XenReportsX"); obj = Activator.CreateInstance(ComType); } catch(Exception) { throw new Exception(TextMessageProvider.GetText(ResourceKeys.XenReportErrorMessage)); }

誰かがこの問題に直面したかどうか教えてください。Com オブジェクトは C++ exe 用です。

0 投票する
2 に答える
656 参照

vb.net - ProcessExplorer では検出できるのに、handles.exe では DLL を検出できないのはなぜですか?

問題: Windows Server 2012 r2 ボックスで、Chef を使用して .dll コマンド コンポーネント (別名、regsvr32.exe を使用してボックスに登録した vb 6 ライブラリ) をプログラムで置き換えようとしていますが、ファイルをコピーすると、Web サイトのアプリ プールがロックされます。問題があるかどうかはわかりませんが、w3wp プロセスは IIS 経由で 32 ビットとして実行するように設定されています。

私の解決策(機能していません):それを修正するために、コマンドラインツールを使用してdllへの参照を見つけ、それを使用しているアプリプールをリサイクルすることを考えていました. 残念ながら、SysInternals のプロセス エクスプローラーで dll を見つけることはできますが、Handles.exe (プロセス エクスプローラーのコマンド ライン バージョンと思われる) は何も返しません。誰かが私がどのようにハンドルを間違って使用しているか、またはこれのためのより良いツールがあるかどうかを教えてくれることを望んでいました.

Process Explorer - dll ComHelper.dll が見つかりました ProcessExplorer_working

コマンド ライン経由で処理 - dll ComHelper.dll が見つかりません HandlesCommandLine_not_working

-- 編集 -- これは、管理者として実行中に w3wp をポイントしたときのハンドルの出力です。 HandlesSearchingForW3WP

0 投票する
2 に答える
125 参照

c# - C# で COM オブジェクトから最後のエラーを取得できません

私のC#コード:

結果は次のとおりです。

「エラー番号:0 エラーメッセージ:」

私の問題は関数GetLastError()です。この関数の実行後にNumberandmsgを含める必要がありerrornumberます。messageしかし、彼らはまだemptyです。

誰か助けてくれませんか?

* 編集 *

次のコードを VBScript として実行しました。

cscript を使用したこの VBScript は正常に動作しています。エラーメッセージと番号も取得します。したがって、GetLastError() メソッドが機能します。

0 投票する
1 に答える
915 参照

powershell - Windows Vault 資格情報を作成し、それを Outlook にリンクする - Powershell

この問題の解決策を何時間も調査した後、まだ見つかっていません。おそらくあなたが私を助けることができると思いました...

メールの移行プロセスを自動化しようとしています。クライアント側で Outlook プロファイル ファイル (Office カスタマイズ ツールからの PRF ファイル) を作成し、設定などを更新します。最後に、データを pst にエクスポートします。 Outlook com オブジェクト (outlook.interop) はこれまでのところ非常に優れています。プロファイルを作成して Outlook を起動すると、「パスワードを記憶する」をチェックすると、ユーザー/パスを入力するための「資格情報を要求する」ウィンドウが表示されます。 "、windows はそれをボールトの資格情報に保存します。

ここで、Outlook を起動する前に資格情報を事前に作成したいので、Outlook は資格情報を要求せずに起動してボールトで見つけますが、ボールトで資格情報を手動で作成すると、Outlook はそれを使用せず、パスワードを要求します。私は cmdkey /generic:MS.Outlook:user@domain.com /user:$email /pass:$pass- を試してみましたが、機能しませんでした。その特定のユーザーキーなので、他のユーザーはそれを見ることができず、逆に資格情報を手動で作成すると、現在ログオンしているユーザーを暗号化のキーとして使用するため、Outlook を開いたときにパスワードが認識されないため、これは暗号化した現在のユーザーだけで機能するpowershell securestringと同じように、機能しない理由です。(しかし、それは今のところ私の意見です)

だから、おそらくあなたの一人は次の方法を知っています:

資格情報の作成を自動化し、それを Outlook プロファイル/アカウントにリンクするか、または: 別のユーザーとして資格情報を作成します。また、invoke-command を別のユーザーとして考えてから、'cmdkey' を実行しますが、コンピューター ドメインは同じではありません私のローカルコンピュータとして、

可能であればoutlook comオブジェクト、レジストリ、スクリプトなど、プロジェクトにとって非常に重要なアイデアは大歓迎です。その間、shell.sendkeyを使用してユーザーパスワードの入力を自動化しますが、実際には安定したソリューションではありません。