問題タブ [cfsocket]
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.
objective-c - ホストコンピュータのIPでない場合、CFSocketSetAddressは失敗しますか?
簡単なWOLアプリケーションを作成しています。これまでのところ、ソケットは正常に作成できますが、CFSocketSetAddressを使用してアドレスを設定する場合、使用できるのはコンピューターのネットワークIP(WiFi ip = 192.168.0.5)またはローカルIP(127.0.0.1)のみです。
WOLの場合、データをブロードキャストアドレス(255.255.255.255)に送信したいと思います。これを入力すると、「アドレスを設定できませんでした」というエラーが返されます。
CFSocketSetAddressの使用を誤解していて、アドレスはホストIPまたは宛先IPであると想定されていますか?どちらの場合でも、宛先IPがブロードキャストアドレスになるようにするには、何をする必要がありますか?
以下は私のコードの一部です:
macos - CFSocket がコールバックを送信しないようにするにはどうすればよいですか?
接続するすべてのクライアントのオブジェクトを作成するサーバー アプリがあります。このオブジェクトのinit
メソッドでは、次のコードを使用して を作成CFSocket
し、クライアントと通信します。
メイン プログラムがクライアントで完了すると、ClientConnection
オブジェクトが解放され、そのdealloc
メソッドが呼び出されます。
それが完了した後も、クラッシュの原因となる割り当てが解除されたオブジェクトにルーティングされるデータ コールバックを受け取ります。
考えられる限りのことはすべて試しましたが、それでもうまくいきません。CFSocket
が無効化された後にコールバックを送信する理由について何か考えはありますか?
cocoa - Mac OSXLion10.7.2のポートのバインド/リッスンが失敗する
MacOSX 10.7.2(Lion)でSilverLightポリシーサーバーをセットアップしようとしています。これには、SilverLightがこのポートでポリシーファイルを要求するため、ソケットを作成してポート943にバインドする必要があります。残念ながら、errno=49.
このポートにアクセスできないと思われるため、バインド呼び出しが失敗するため、そのポートでバインドできないようです。おそらく私はroot特権が必要ですか?または、このポートをバインドできる別のポートに転送する必要がありますか?私はネットワークプログラミングに少し慣れていないので、どんな助けでも大歓迎です!ソースコードも添付しました。おそらく私は何か間違ったことをしていますが、ポリシーファイルが正常に提供されるとSilverLightが通信するSilverLight制限付きポート4502-4532を使用すると正常に機能します。
iphone - Bonjour ベースの iOS アプリケーションで複数のアドレスを解決するにはどうすればよいですか?
iOS で Banjour ベースのアプリケーションを実装しようとしています。あるiPhoneから別のiPhoneへのデータの送受信にも成功を完全に実装しています。サービスを閲覧した後、作業中の他のすべてのデバイス。テーブルに表示します。
テーブルビューでいくつかのデバイスを選択し、選択したデバイスにデータを送信したい
そのために、各デバイスにソケットを1つだけ作成しました。
選択したデバイスにデータを送信したいと考えています。そのために、選択した NSNetService (つまりデバイス) を別の NSMutableArray に保存しました。使用する場合 送信ボタンをクリックすると、特定のアクションが呼び出されます。
各デバイスのアドレスを解決しようとしている場合(上記のコード)。最初のデバイスでのみ解決されます。そしてエラーが発生する
- (エラーコード=-72003]
Tableviewから自動的に削除されるデバイスのアドレスを解決した場合、もう1つの問題があります。
だから私の疑問は次のとおりです。
- 選択したデバイスが取り消されたのはなぜですか?
- TCP ベースのソケットを作成します。データを送信する宛先アドレスを追加するにはどうすればよいですか?
- 単一のソケットから複数の宛先にデータを送信することは可能ですか?
objective-c - WiFi を介して iPhone アプリケーションで複数のピアを接続する方法は?
複数のピアに接続する必要がある ios(iPhone) アプリケーションのアイデアがあります。コードはWiTab (SampleCode-developer.apple.com) の例に基づいています。
私のアプリケーションが各ピアを開始すると、個別のソケット(CFSocket)を作成し、NSNetService クラスを介して公開します。特定のインスタンス NSNetServiceBrowser クラスは、利用可能なピアを見つけます。テーブルビューで名前を表示します。テーブルビューで行を選択すると、対応するピアアドレスが解決され、接続が確立され、データの送受信が正常に行われました。
しかし、私の意図は、tableView(複数のピア)で複数の行を選択したいということです。選択したピアのアドレスを解決しました。そのために、選択したピア情報を NSMutableArray に保存しました。送信ボタンをクリック(タッチ)すると、選択したデバイスのアドレスを解決し、選択したピアにデータを送信したい。そのために私はこのコードをやった
しかし、それは1つのデバイス(self.selectedService objectAtIndex:0)のみを解決します。したがって、複数のピアアドレスを解決するにはどうすればよいですか/複数のデバイスの接続を確立する方法. 私の疑問は次のとおりです:-
- WiFi経由で複数のデバイスを同時に接続することはできますか?
- はいの場合、同じパターンで接続できるデバイスの最大数は何台ですか?
- 複数接続(TCP/UDP)に便利なCFSocketはどれ?
- 各ピアに複数の CFSocket を作成する必要がありますか?
- はいの場合、どのように?利用可能なドキュメントはありますか?
- セッションを確立するために必要ですか?
- 複数のデバイスのアドレスを解決するには?
ios - IOS で CFSocket を使用した UDP ブロードキャスト
このテーマについていくつかのグーグル検索といくつかの読書を行ってきましたが、検索にどれだけの時間を費やしても正しく理解できないようです.
私がやりたいことは、ネットワークに接続されているデバイスが提供するサービスへの関心を宣伝することによって、デバイスのブロードキャスト メッセージを受信することです。Wireshark を使用すると、ネットワーク経由で送信された、接続したいネットワーク デバイスからのブロードキャスト/通知メッセージを見ることができますが、サービスに関心のあるブロードキャスト検索は表示されません。しかし、ネットワークユーティリティを使用すると、ソケットが作成されたことがわかりますが、リッスンまたは接続されているかどうかはわかりません。
はい、これを行うために使用できるライブラリがあることは知っていますが、独自のものをゼロから構築して、それがどのように機能するかをよりよく理解したいと思っていました。
MySocket.h
MySocket.m
編集:データを送信するための呼び出しまで、すべてがうまくいきます。
これが機能するために、私が見逃している小さいながらも重要なものはありますか? それとも私は全体像を見逃していますか?
ヘルプやガイドをいただければ幸いです。前もって感謝し、良い週末を
ios - iOSでCFRunLoopRunからUIにアクセスする方法
CFSocket クラスの CFRunloop (connectCallBack) でコマンドを取得したときに、新しいビューをポップアップ表示するにはどうすればよいですか。
ios - iOS CFSocketでキープアライブを有効にするにはどうすればよいですか?
iOSアプリ(CFSocketクラス)でキープアライブを有効にするにはどうすればよいですか?
objective-c - CFSocketCreateWithNative 後の潜在的なメモリ リーク
これは私を怒らせています!ここで何が問題なのですか?