質問

何らかの変更があり、独自のリモート アシスタンス/画面共有ツールを開発して独自の CRM に組み込みたい場合は、どこに行けばよいですか?

コミュニケーションについては何も分かりませんが、そのような考えに自分も関わってみたいと思っています。私の質問は、ものを作成するための基礎的な知識と基本的な構造は何ですか? ログイン/コパイロット/etc 製品?

ジョエルは(数年前)あるポッドキャストでコパイロットについて、優秀な人材を使ってプロトコル全体を C++ で開発したと話していたのを覚えています...

これを実現する方法について何かアイデアはありますか、または私を待っているオープン API があるかどうかは教えてください。

役に立ちましたか?

解決

VNC、霧クリークCopilotのと、他のリモートコントロールソフトウェアの仕組みと題したこの記事を参照してください。 >。

私は、ブログの記事が言うから、ここではいくつかの追加の詳細を提供しますが、それは霧クリークCopilotのソースコードに、より具体的です。このデータはすべて、ソースコードを見てから撮影されました。

基本的Copilotのは、C ++でゼロから書かれていませんでしたが、代わりに、それはGPLのTightVNCにのオフに建設されました。はい、これはCopilotのメインのソースも出与えられなければならないことを意味しています。あなたはここにの霧クリーク副操縦士のソースコードrel="noreferrer">の

プロジェクトは、Mac版とWindows版に分割されます。 Mac版は客観Cで構築されており、Windowsのバージョンは、Win32 C ++(MFCない)で構築されています。 Windows版の場合はVS 2008で行われたヘルパーソリューションとホストソリューションは、(ホストが助けされている人物である)VS 2008年に作られた、私はそれが大きなリンクサイズだのために、彼らはTrolltechのQtのを使用していなかったと思いますが、それは重要でした彼らにそれが元々誰もが誰かを助け、誰もがそれぞれの時間の助けを必要としてダウンロードする必要がありましたので、非常に小さなダウンロードを維持します。

のx64やIA64構成何もありませんので、Windows上のすべてのコードは、唯一のx86プロセスとして実行されます。それはちょうど使用することができ、他の32ビットプロセスとしてWOW64を通じてしかし、64ビットWindows上で実行することができます。

私が理解したよう

、開発はホストが大部分はVM上で実行されているで行われました。ヘルパーの開発は自分のデスクトップ上で行われました。

Copilotのソースコードは、ブースト1.38、および他のいくつかのサードパーティのライブラリを使用しています。これらのライブラリは、NATトラバーサルのためSTUNT、MatrixSSL、(MicrosoftのNTLM認証のためのライブラリ)libntlmとomnithread(スレッドと同期ライブラリ)が含まれます。

は、ほとんどの場合、それは、BSDスタイルのソケットを使用していますが、それはまた、ブースト:: ASIOでいくつかのネットワークコードを持っています。ブースト:: ASIO 1.38はブースト1.40で修正されたことで多くのバグを持っているので、これは問題があります。このプロジェクトは、ホスト上のキーボード、マウス、および他のウィンドウのメッセージをフックするだけでなく、WindowsのフックDLLを持っています。

ホスト、デリータとフックDLL:

ウィンドウはシェル好きしかし、それは基本的に3つのバイナリが含まれていないシェルのプロジェクトがあります。これは、これらを抽出します。

どのような彼らは与えていないことは、私は projectaardvarkにいくつかのブログの記事から理解して反射し、ウェブサイト、のソースコードです。 COM に、彼らは、C#、C ++での他のすべての両方です。リフレクタの目的は、NATトラバーサルを支援することです。途中で projectaardvark.com に代わる新しいブログは、<のhref = "http://blog.copilot.comと呼ばれています/」のrel = "noreferrer">航空交通でます。

VNCは、リモートフレームバッファプロトコルのオフbassedれます。あなたは、プロトコルの多くの経験を持っている場合はRFBプロトコル自体はそれほど難しくはありません。

他のヒント

オープンソースの VNC プログラムを見てください。パスワードで保護された画面共有と表示が可能になります

http://www.realvnc.com/vnc/index.html http://en.wikipedia.org/wiki/Virtual_Network_Computing http://libvncserver.sourceforge.net/

願っています VNC ライブラリやアプリが役に立ちます。これらは Windows およびさまざまな Unix システムで使用されます。

あなたは、リモートデスクトップのActiveXコントロールを見てかかることがあります。その場合、プロトコルは、RPC(十分に文書)です。また、あなたのために行われた通信とリモートUI層の両方が、あなただけのいくつかの簡単なUIのシェルコードを記述する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top