問題タブ [createoleobject]

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 投票する
2 に答える
12269 参照

delphi - Delphi SAPI テキスト読み上げ

まず第一に、これはDelphi と SAPIの複製ではありません。「Delphi の SAPI」という件名に特定の問題があります。

コンポーネント パレットで TSpVoice コンポーネントを取得するために、Delphi 2009 の優れた Import Type-Library ガイドを使用しました。これはうまくいきます。と

私は書くことができます

非同期オーディオ出力を取得します。

最初の質問

ドキュメントによると、私は書くことができるでしょう

同期オーディオ出力を取得しますが、代わりに EZeroDivide 例外が発生します。なぜですか?

2 番目の質問

しかし、もっと重要なことは、SpVoice オブジェクトを動的に作成できるようにしたいということです (これは、SpVoice オブジェクトを "遅延バインド" するために呼び出されると思います)。また、エンド ユーザーのシステムに SAPI サーバーが存在することを想定したくないという理由もあります。

この目的のために、私は試しました

明らかに何もしません!(0 を 1 に置き換えると、EZeroDivide 例外が発生します。)

免責事項

私は、COM/OLE オートメーションの初心者です。この投稿で私が示した無知または愚かさについては申し訳ありません...

アップデート

私と同じ問題に遭遇したすべての人のために、François によるビデオでは、SAPI/Windows にバグがあり (どこかに非互換性があります)、次のコードで EZeroDivide 例外が発生することが説明されています。

ビデオで示されているように、解決策は FPU 制御ワードを変更することです。

さらに、サウンドを非同期で再生したい場合は、プレーヤーが範囲外にならないようにする必要があります。

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

delphi - DelphiCreateOleObjectイベント

コードがあります:

このCOMオブジェクトにはイベント(OnClickなど)があります。TLBをインポートせずにこれらのイベントに接続するにはどうすればよいですか?

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

visual-c++ - VC ++はプログラムでExcel OLEObjectを追加しますか?

Interop ライブラリを使用して VC++ の Excel ワークシートに OLEObject を追加するのに問題があります。コンパイラは VC++ 2010 Express です。相互運用ライブラリは Office 2007 用です。

宣言は次のとおりです。

Excelを制御するコードは次のとおりです。

OLEObject を追加するために Excel でマクロ記録を行いました。これが生成される VB コードです。

VB には OLEObjects への Add メソッドがありますが、C++ にはありませんか? 私は何を間違っていますか?

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

excel - 実行時エラー '1004': OLEObjects クラスの Add プロパティを取得できません

開いたときにすべてのシートにボタンがあることを確認するワークシートがあります。そのため、ボタンのない新しいシートが存在する場合は、それを追加するように設定されています。数か月前はこれでうまくいったと確信していましたが、現在 (このシートを数か月使用していなかった後)、「OLEObjects クラスの Add プロパティを取得できません」というエラー '1004' が表示されます。エラーは「set btn」行で発生します。何が原因で、どうすれば修正できますか?

マクロ設定 = 「すべて有効」、Active X 設定 = 「すべて有効」、ドキュメントはネットワーク化されていますが、ネットワーク ドキュメントは信頼できるように設定されています。同じ「set btn」スタイルのコードを使用する別のワークブックがあり、このマシンで動作するため、特にこのワークブックに問題があるようですが、上記のコードでエラーが発生します。どんな助けや洞察も大歓迎です。

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

excel - VBAを使用してExcelのシートのOLEObjectから境界線を削除します

VBA を使用して、ActiveX フォーム コントロールを含む Excel シートを生成しています。ただし、オブジェクトのプロパティについて利用できるドキュメントはかなり大雑把です。たとえば、OptionButton コントロールを作成すると、オブジェクトに白い実線の境界線が含まれることに気付きました。手動でデザイン モードに入ることができます。右クリック; [オブジェクトの書式設定] をクリックし、ダイアログ ボックスの [色と線] タブで、[塗りつぶし (自動)] を [塗りつぶしなし] に変更します。次の例を参照してください。

[オブジェクトの書式設定] ダイアログ ボックス

ただし、コードを使用してこれを行う方法をまだ考えていません。以下をご覧ください。

Excel のオブジェクト ブラウザでは、ほとんど手がかりが得られません。

MSDN の Article on OLE Object Propertiesも参照 しましたが、必要なものに対処するものはないようです。