問題タブ [qtnetwork]
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.
c++ - QTcpSocket メモリリーク
QTcpServer と QTcpSockets を使用してクライアント サーバー アプリケーションをセットアップしていますが、巨大なメモリ リークが発生しているようです。簡単なテスト アプリケーションをセットアップしたばかりで、ループで 250,000,000 メッセージを送信した後、クライアントが 75 メガまで上昇するため、Qt のソケットの使用に問題があるのではないかと考えています。数百万のメッセージがある場合、クライアントで 300 MB 以上のメモリが使用されているようです。
メッセージを送信し続けると、メモリが増え続けるので、これは私には正しくないように思えます!
したがって、接続されたソケットで次のコードを指定すると、アプリが常にメモリ内で上昇すると予想する必要があります。このソケットを開いたままにしておくと、すぐにメモリ不足になります。何か不足していますか?
qt - Qt endl は、Linux telnet からは見栄えがよく、Windows telnet からは間違っています
Qt で telnet サーバー アプリを構築しています。Linux telnet クライアントから接続すると、出力が見栄えがよくなります。たとえば、コンソールに "A" << endl << "B" << endl << "C" を送信すると、次のようになります。
Windows telnet クライアントから接続すると、
明らかに Qt の endl は '\n' のみを送信しています。これに対する簡単な解決策はありますか?endl を "\r\n" に置き換えると、Linux クライアントが台無しになりますか? フラッシュも強制する必要がありますか?
これは、telnet クライアントに送信するために使用している実際のコードです。
qt - QT: Web ページからテキスト コンテンツを取得する
ボタンをクリックすると単純な HTML ページからデータを取得する単純なアプリから始めようとしていて、QT-Project に関するかなり役立つチュートリアルに出くわし、それを自分のプロジェクトに実装しようとしています。
(チュートリアルにあるように) loadImage 関数を実際に実装しようとするまで、すべてがなんとかコンパイルされます。(実際にはm_pImgCtrl
as として初期化する必要がFiledownloader * m_pImgCtrl = new FileDownloader(imageUrl, this);
ありましたが、事前のオブジェクト宣言なしでどのように動作するのか正確にはわかりませんか?)
私が得たものから、関数の外部で初期化されているためm_pImgCtrl
、実際にはloadImage()
関数で定義されていませんか? それとも、connect()
関数は私があまり気づいていないことをしますか?
助けてくれてありがとう!
qt - (QtNetwork) データが返されない/ネットワーク応答が空
以前の質問のフォローアップとして、要求されたページが存在するにもかかわらず、ダウンロードされたデータが空であるという問題に直面しています (少なくとも Web ブラウザーから)。
私は、データが実際にダウンロードされ、デバッグ行fileDownloaded()
が呼び出され、からの信号downloaded()
がに渡され、ボタンがクリックされるたびに行SLOT(loadText()
をコンソールに出力すると推測しています"STRING: "
メインウィンドウ.h
メインウィンドウ.cpp
main.cppはデフォルトのテンプレートから変更されていません。
助けてくれてありがとう!
c++ - Windows XP で QTcpSocket::connectToHost() がクラッシュする
QTcpSocket を QTcpServer に接続するプログラムを作成しましたが、Windows 7 では問題なく動作しますが、Windows XP では接続せず、プログラムが終了するだけです。
Windows XP では、最初の行を超えることはありません。ソケットの状態が 0 から 1、2 に変化し (ソケットが接続の確立を開始)、閉じます。ファイアウォールを通過するポート 1234 を許可するか、ファイアウォールを完全に無効にしようとしましたが、それでもクラッシュします。
誰でもこれを修正する方法を知っていますか?
javascript - QNetworkReply は HTML コメントに隠された JavaScript を取得しません
Qt 4.8 を使用して HTTP Post リクエストを作成しています。
取得する必要がある HTML ページには、HTML コメントに Javascript が隠されています。Firefox/Chrome で見るか、Python3 で HTTP リクエストを作成すると、Javascript コードのコメントが思い通りに表示されます。次のようになります。
ただし、Qt の例では、Javascript を使用しないとコメントしか取得できません。
Qt 4.8でJavascriptも取得する方法はありますか?
c++ - Qt のテンプレート制限を回避する
サーバーの初期化時に提供されるユーザー (ログインとパスワードのチェック、ファイルの配信など) を処理するクラスでパラメーター化できる単純な柔軟な ftp サーバーを C++ で作成したいと考えています。
だから私はこのきちんとした(そう思った)アイデアを思いついた:
そして(おそらくあなたはそれが来るのを見たでしょう)バム!
私は C++ テンプレート メカニズム (および Qt も) を学び始めたばかりなので、他のエラーや誤解もある可能性があります。
私の質問は次のとおりです。関数ポインターを渡すなどの醜いハックを使用したり、具体的な FtpDelegate の派生クラスごとにファクトリ実装を作成したりする必要なく、それを機能させる最良の方法は何ですか。私には見えない巧妙なデザインパターンがあるのかもしれません。最終的には、ネットワーク メカニズムを書き直して、それが最適なオプションである場合はブーストすることができます。
c++ - QNetworkAccessManager を使用して Web からデータを取得する: ファイルはダウンロードされますが、QNetworkReply::readAll は null を返します
すでに同じ質問がありましたが、単一の回答は役に立ちません: Qt Download File - QNetworkAccessManager, not gets data
だから、私はファイルをダウンロードしようとしています:
そしてonDownloadRequestFinished
スロットで:
スロットは次のように出力します: reply 0 0 0 true OpenMode( "ReadOnly" ) true
So, no data. ただし、どこかに何かをダウンロードしていることははっきりとわかります。から判断すると、それは大きなファイルであり、ダウンロードしますonDownloadRequestProgress
。
重要な説明: 同じコンピューター上の別のプロジェクトでも、ほとんど同じコードが機能します。違いを見つけようとしていますが、今のところ何も見つかりません。
データはどこにありますか?