6

私は C# を使用してSkype4COM.dll COM APIを操作していますが、必要なすべての通信機能に対して非常にうまく機能します。アプリケーションに組み込まれている Skype の上に、使いやすいインターフェイスを配置しようとしています。

私の問題は、使用する Skype ウィンドウと使用しない Skype ウィンドウを制御または無効にすることにあります。私が必要だと思う唯一の Skype ウィンドウは、Skype ビデオ電話/会議ウィンドウです。Skype が表示できる他のすべてのウィンドウを非表示にして制御したいと考えています。独自の応答プロンプトを表示するため、着信時にポップアップする着信ダイアログ ウィンドウも無効にしたいと思います。ウィンドウ管理以外の API には満足しています。

API を使用すると、Windows を有効にする方法を確認できますが、Windows メッセージを Skype アプリにハッキングする以外に、Windows を非表示にする方法がわからないようです。何か不足していますか?

助けてくれてありがとう、ケニー

4

3 に答える 3

5

少し調べてみると、次の方法で「Skype コマンド」を送信できることがわかりました。

skypeobj.SendCommand ( Command cmd );

これは、必要なもののほとんどでうまく機能します。Skype 開発者サイトのリファレンスは次のとおりです。

いくつかのコード:

    void _SendSkypeCommand ( string cmdToSend )
    {
        Command cmdSkype = new Command ();
        cmdSkype.Blocking = true;
        cmdSkype.Timeout = 2000;
        cmdSkype.Command = cmdToSend;
        Trace.WriteLineIf ( _TracingDetailed, string.Format ( "skype command sent '{0}'", cmdToSend ) );
        _skype.SendCommand ( cmdSkype );
    }

    void _hideSkypeWindows ()
    {
        _SendSkypeCommand ( "SET SILENT_MODE ON" );
        _SendSkypeCommand ( "SET WINDOWSTATE HIDDEN" );
    }
于 2009-03-10T13:54:21.227 に答える