問題タブ [wt]

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

javascript - Qt アプリから Web アプリへの変換の推奨事項

私は現在、TCP 接続を介して別のアプリケーションによって提供されるリアルタイム データを表示するグラフィカル ダッシュボード (ゲージ、グラフなど) を提供するだけの Qt ベースの GUI アプリケーションを使用しています。アーキテクチャとセキュリティ上の理由から、TCP 接続は許可されなくなり、HTTPS Websocket が唯一のパイプになると言われました。HTML5 と Javascript を使用してアプリを Web アプリに変換するよう提案されました。ただし、私は Web プログラマーではありませんが、これを新しい技術を学ぶ機会と考えるかもしれません。決定を下す前に、風景をもう少しよく理解したいと思います。したがって、私の選択肢は次のとおりだと思います。

  1. アプリを Web アプリに変換して、Web ベースのアプリのすべての長所と短所を提供します。これは新しいテクノロジーであり、すでに Qt/TCP バージョンが正常に動作しているため、さらに多くの作業が必要です。これが推奨されるアプローチである場合は、開発環境/ツールに関する提案をいただければ幸いです。

  2. 現在の Qt アプリを、TCP 接続ではなくクライアント HTTPS 接続に変換します。これが可能かどうかはわかりません。私が読んだことから、これは QtWebKit では不可能かもしれません。奇妙に思えますか?

たぶん、私が考えていない別の選択肢がありますか?

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

amazon-ec2 - Elastic IP で amazon ec2 の wt にアクセスする

サンプルの 1 つを起動するときに、ubuntu が実行されている ec2 のマイクロ インスタンスで最新の wt をソース コンパイルしました。

クロムのアドレスバーに入れhttp://54.243.50.12:8080/たり、入れたりしてもアクセスできません。http://54.243.50.12/それはロードし続け、それを見つけることはありません。

エラスティック IP の関連付けが機能しました。パテで54.243.50.12に接続できました。

wt の起動時に Elastic IP を指定しようとすると、wt サーバーが起動しません。

エラスティック IP がなければ、同じ話でした。

8080 ポートが開いています。

http://redmine.webtoolkit.eu/boards/2/topics/4484#message-4516にあるすべてのことを行いましたが、役に立ちませんでした。

0 投票する
2 に答える
1184 参照

c++ - Wt の例に結合する際のリンク エラー

プロジェクトに C++ webframework を使用しています。gitmodel の例に認証を追加しようとしています。

次のエラーが表示されます。

完全なエラー リスト: http://pastie.org/5469803

cmake で生成された makefile を使用してみました。トレースした後、このリンカー エラーは、CMakeFiles ディレクトリの下で link.txt を実行した後であることがわかりました。hangman も認証を行うため、gitmodel の例と hangman の例の link.txt を結合しようとしました。ここに私のlink.txtがあります:

ペーストリーのリンク: http://pastie.org/5469815

私のリンクコマンドの何が問題なのか誰か教えてください。

cmakeを実行すると、

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

c++ - Mac と Netbeans で Wt プロジェクトを作成する方法

Mac にWtを正常にビルドしてインストールしました。次に、サンプル アプリをビルドして実行する必要があります。マシンに必要なライブラリが見つかりません。例のドキュメントでは、次のことを行うように指示されています。

しかし、Netbeans に追加できるように、Include と libs ファイルが見つかりません。

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

c++ - wtwithqt の例を QtCreator(qmake) でコンパイルする

私はQtを使用してネットワーク管理アプリケーションに取り組んでおり、UI にWtを使用することにしました。これを使用すると、Web パーツ (PHP、AJAX、HTML/CSS) を処理する必要がなく、すべてで使用できるためです。プラットフォーム。

cmake を使用してサンプルをコンパイルして実行することに成功しました。私は QtCreator IDE と qmake に慣れていますが、開発とコンパイルにはそれを使用したいと思います。

QtCreator(qmake)で「wtwithqt」の例をコンパイルしようとして行き詰まりました。qmakeでコンパイルする方法のガイドをどこでも探してきました。しかし、私は何も役に立ちませんでした。

これが私の .pro ファイルです。

testwt.pro

コンパイル出力

どんな助けでも大歓迎です!前もって感謝します!

0 投票する
2 に答える
1571 参照

c++ - WT でメモリをクリーンアップするには?

2013 年 3 月 27 日更新

私はメモリをリークしていないように見えます.F5が押されるか、新しいユーザーが接続するたびにWTが永続的なセッションを維持していないだけです. 基本的に、古いセッションは削除され、F5 キーを押すか、新しいユーザーが別のマシンから接続するたびに新しいセッションが作成されます。セッションを永続的にすることについて言及しているドキュメントの一部を読んだので、ユーザーがページをリロードしたり、別のユーザーが接続したりすると、すべて同じコンテンツが表示されます。しかし、私はまだそれを機能させることができませんでした。関数呼び出しかwt_config.xmlファイルの設定だと思います。他に進展があれば更新します。

元の投稿

だから私の質問は、どのように WT でメモリをクリーンアップして、ユーザーがページで F5 を押すたびにタスク マネージャーでメモリ使用量が同じになるようにするかということです。

わかりましたので、私は WT 発音 (機知に富んだ) で作業しています。ユーザーがページで F5 キーを押してページを更新するたびに、サーバー アプリケーションがより多くのメモリを消費することに気付きました。これは、メモリ リークしているように見えますが、 WTの最も基本的なアプリケーションと同じプロセス...

そこで、私が見つけることができる最も基本的な WT アプリに戻りました。Hello アプリケーションのコードと実際のサンプルは、ここ ( http://www.webtoolkit.eu/wt/examples/ ) にあります。プロジェクトを個人的に構築していません。

マシンで例を実行し、ページで F5 キーを押すと、タスク マネージャーのメモリが増加しました。

私の可能性が高いのは、以下のこの関数です。

F5 が押されるたびに呼び出され、WApplication を継承する HelloApplication の新しいインスタンスを作成します。

うまくいかなかった状況を改善しようとしたいくつかのことは次のとおりです。 HelloApplication の 2 つのポインターを保持して、新しいポインターが割り当てられるたびに古いポインターを削除できるようにします。quit() 関数を呼び出し、ポインターを削除します。quit() 関数を呼び出すだけです。クラスとそのメソッドの詳細については、WT ドキュメント サイト ( http://www.webtoolkit.eu/wt/doc/reference/html/index.html ) も調べましたが、思いつきませんでした。うまくいったもの。

回答者の方は、メモリのクリーンアップの処理方法をできるだけ詳しく教えてください。例をいただければ幸いです。事前に感謝します。

0 投票する
3 に答える
19070 参照

c++ - 仮想メモリが使い果たされました:メモリを割り当てることができません

私のコンパイルは、300mbのメモリが利用可能なubuntu 12.10(合計750mb、MySQLに対して350mb)、1.5ghzで失敗します。wtの基本的なhelloworldファイルを単純なajaxページに作り直そうとしています。元のhello.Cファイルを。でコンパイルできたので、これは本質的にメモリの問題ではないと確信していますg++ -O3 -o hello hello.C -lwtfcgi -lwt -lboost_signals

HelloApplication::HelloApplication(const WEnvironment& env) : WApplication(env)Wt :: Jsonの例の内臓を取り除いて例を入れたので、C++を台無しにしていると確信しています

私はc++を初めて使用するので、何をしているのかほとんどわかりません。私にできることは、最も単純なc++ファイルを実行することだけです。

これがhelloworldファイルの元のソースです。

ここからjsonサンプルを入手しました

**影響**

うわー、私の尊敬のレベルはちょうどc++の力のために屋根を通り抜けました。

これは私のVPSを完全に破壊しました。再起動できません。ディストロを再インストールすることすらできません。

最終的に本番環境に入るときは、このようなものが本番システムを強制終了するのを防ぐために、まったく異なる開発システムをセットアップするつもりだと思います。

0 投票する
2 に答える
2407 参照

c++ - Wtコンパイルの問題

Wtアプリケーションの作成方法を学び始めていますが、修正方法がわからないコンパイルエラーが発生します。コンパイルすると、次のようなエラーが表示されます

私はArchLinuxの最新バージョンを実行していますが、それが役に立った場合は。また、これが私がコンパイルしたいアプリケーションです。

更新された情報:libboost_signalsライブラリをリンクすると、次のコンソール出力が表示されます。

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

c++ - 編集したWtWithQtサンプルがクラッシュするのはなぜですか?

メインロジックにQt、ユーザーインターフェイスにWtを使用してアプリケーションを開発しています。

しかし、私は解決できない問題に直面しました。wtwithqtの例に適用しました。

「passGreet」関数を変更して、シグナルを直接ではなく非同期で呼び出すようにしました。

その時点でアプリケーションがクラッシュします。理由がよくわかりません。

編集:実際には、Wtオブジェクトを編集すると実際にクラッシュします"HelloApplication::doGreet(const QString& qname)"

ここに画像の説明を入力してください 写真:https ://dl.dropbox.com/u/90945130/crash.png

おそらく、Qtイベントループから始まるアクションの起源に何かがありますか?

これがコードです。

変更されていないコードの残りはここにあります:http://pastebin.com/fih6P2eH

事前に助けてくれてありがとう!

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

c++ - WT ウィジェットがブースト スレッドで更新されない

WT で興味深い問題に遭遇し、解決しましたが、私のソリューションが問題を解決した理由がわかりません。私はウィジェットの WT ドキュメントを掘り下げて、これまで手ぶらでやってきたので、WT についてもっと知っている人がここで私を助けてくれるかもしれません。

とにかく、ブースト スレッドの WComboBox ウィジェットがクリックされたときにデータが更新されず、選択が変更されるという問題があります。

クラスにブースト スレッドを作成しました

次に、コンボ ボックスにデータを入力します。「foo」と「goya」を 2 つのエントリとして使用します。スレッドの関数を作成し、ループを入れました。

コンボ ボックスの最初の選択を変更しないと、上記のコードは常に foo if ステートメントに入りますが、これは想定どおりです。ただし、_combo_box の選択を「goya」に変更すると、上記のコードは依然として「foo」if ステートメントに入ります。これは非常に予期しないことです。ifステートメントの前にコンボボックスの現在のインデックスを出力するなど、問題をさらに調査すると、常に0であり、選択が変更されてもインクリメントされないことがわかりました。

私がそれを修正した方法は、クラスに追加した何もしない関数にコンボボックスの changed() シグナルを接続することでした。

選択が変更されたときのその関数呼び出しの追加により、"foo" および "goya" if ステートメントは適切に機能し、if ステートメントの前にコンボ ボックスの現在のインデックスを出力して、インデックスが現在変更されていることを確認しました。

changed() シグナルを何もしない関数に接続すると、状況が改善されたのはなぜですか? ここには見られない大きな問題があると確信しています:(どんな助けも大歓迎です。