問題タブ [qlibrary]

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

qlibrary - Qt shell32.dll ShellExecuteA 奇妙な動作。ファイルを表示するにはどうすればよいですか?

次のように定義されたコードがあります。

このコードは、私が望むようにファイルを起動しますが、すぐに爆発します。新しいウィンドウは開いたままです。

私は次のような別のバージョンを持っています:

このコードは爆発しません。b.exec() を呼び出す必要さえないことに注意してください。ただし、b.exec() を呼び出すと、値 42 が表示されます。

ここで何がうまくいかないのか、それを修正するために何ができるのか、誰かが私に手がかりを与えることができますか?

ありがとう。

編集:

後世にとって、ここでの前提は間違っています。Qt は、プラットフォーム固有のコードがなくても、私が必要とする正確な機能を提供します。受け入れられた回答をご覧ください。

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

qt - QtでのQUuidの適切な使用法は?(7-Zip DLLの使用上の問題(QLibrary、QUuid GUID変換、インターフェイス))

アーカイブファイル(7z、zipなど)内からファイルを読み取るために7-ZipDLLを使用するプログラムを作成しようとしています。

これが私が今のところいるところです:

Qt Creatorでそれを構築しようとすると、次のエラーが発生します。

引数の受け渡しで「QUuid*」を「constGUID*」に変換できません

このコンテキストでQUuidを正しく使用するにはどうすればよいですか?

また、C ++とQtの初心者である私は、テンプレートやインターフェイスをまだ十分に理解していないため、全体として、これらの最初のステップを実行するのに苦労しています。たとえば、ZIPファイルから画像ファイルを抽出する方法(後でQt GUIに表示される*)に関するヒントやサンプルコードを提供していただければ幸いです。

  • 現在の私の主な目標は、画像ファイル(PNG、JPGなど)を含むアーカイブファイルを選択し、それらのファイルを1つずつGUIに表示するためのGUIを備えたプログラムを作成することです。要するに、QtベースのCDisplayExです。
0 投票する
0 に答える
705 参照

javascript - アプリケーションの Node.js 構造と流れ

初めての Node アプリケーションの作成が完了しました。うまく機能していますが、コミュニティからさらに多くの情報を読んで詳細を吸収するにつれて、私のアプリは私が読んでいる例とは少し異なるという結論に達しました.

それで、私は解決策を見つけ、howtonode.org をたくさん読んで深く掘り下げました。私は、制御フロー、プロミス、および Q ライブラリの概念に出くわしました。私はそれをすべて消化し始めています、私はそれを理解していると思いますが、私は自分の研究と発見を確認したかったのです. Qlibrary を使用してすべてを再構築することを決定する前に、少なくともコア アプリと方法論を完全に理解できているかどうか疑問に思っています。基本的に、この時点でどのように前進するかを委任します。

app.js

controller.js

すべてのライブラリと重要なコンポーネントをアプリ変数にカプセル化してコントローラーに渡すというアプローチをとったので、参照を直接呼び出して、各コールバック間で 1 つの変数のみを渡すことができます。

その後のすべてのリクエストで、app.js の pre にアタッチしたリクエスト値から app 変数にアクセスしています (したがって、ルート コールバック関数内の request.app.model() 関数です。

このようにコードを構造化することについて心配する必要があるかどうか疑問に思っています。これにより、グローバル変数やそのようなものについて心配することなく、参照をやり取りすることが非常に簡単になりました。名前空間とグローバル変数宣言全体の問題を回避するのに本当に役立つため、これはスマートな方向性であると誰かがほのめかした、少し似たものを読みました(これは大きな問題です)。

もし私が正しい方向に進めば、Q ライブラリと他のすべてがかなりうまく収まると思います。

ありがとう!

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

qt - Qt と外部 DLL へのリンク

プログラムを開発しましたが、このプログラムを他社製の制御可能な光源で動作させようとしています。会社にメールを送信したところ、外部ライブラリを DLL として送信することに同意してくれました。

Qt 4.8.1を使用してすべてのソフトウェアを開発し、MSVC2008を使用してコンパイルしました。

制御可能なライトの DLL は Visual Studio 2008 でコンパイルされ、C++ または C# で記述されています(メーカーは不明です)。私が与えられたのは、DLL と、私がしなければならないことを示すテキスト ファイルだけです。

  1. プロジェクトへの参照として DLL を追加する
  2. using LightName;クラスの先頭に 追加
  3. オブジェクトのインスタンスを次のようにインスタンス化します。LightName *ln = new LightName();
  4. 新しく作成された LightName インスタンスで関数 void turnOn() を呼び出します。

まず、特に単純なハードウェアの場合、外部ライブラリがオブジェクトのインスタンスをインスタンス化する必要があるのは奇妙だと思います。

第二に、他の会社は私にインターフェイス ファイルを提供していません。

私の質問は次のとおり です。Qt 環境でインターフェイス ヘッダー ファイルを使用せずに、C++ DLL にリンクし、このライブラリにネストされた関数を公開するにはどうすればよいですか? 外部ライブラリのインターフェイスを作成する方法はありますか?


私はすでにQLibraryを使用して次のことを試みました。

ただし、与えられたDLLはC DLLではなく、インターフェースがないため、Qtは解決する必要があるシンボルについての手がかりがないため、これは機能しません。


dumpbin /EXPORTS コマンドを使用して、DLL からエクスポートされたすべての定義を表示しようとしました。残念ながら、これは何も生成できませんでした。私は、これから何らかの混乱した C++ を取得し、それを解読して独自のヘッダーを作成できることを望んでいました。


依存関係ウォーカー(非常に便利なツール)を使用しようとしましたが、シンボルを解決して関数定義を提供することができませんでした。


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

segmentation-fault - QLibray セグメンテーション違反

外部ライブラリを使用しようとしています。このライブラリから関数を呼び出すと、正しく動作します。しかし、私はセグメンテーション違反があるループでこの関数を呼び出そうとします。コード例:

私は何を間違っていますか?

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

c++ - c ++ Qt:dllからセグメンテーション違反をキャッチする

QLibraryを使用して外部dllをロードしています。場合によっては、dllがクラッシュするだけです(セグメンテーション違反)。DLLは例外をスローしません。これを処理するための最良の方法は何ですか?別のプロセス/スレッドで実行する必要があることを読みました。これが唯一のオプションですか?

乾杯、m。

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

c++ - QLibrary - クラスをインポートする

QT ライブラリがあり、それを別のプロジェクトにインポートしたいと考えています。

これで、ライブラリを変更しても、他のプロジェクトを再コンパイルする必要がなくなり、QLibrary を使用するようになりました。

しかし... クラスをインポートできません。または、クラスをインポートできますが、そのメソッドにアクセスできません。

これは私が作った例です。

これはクラス宣言です:

そしてこれは実装です:

これはメインファイルですが、他のプロジェクトでは:

これで、オブジェクトのすべてのデータ値 ( ab、 ) にアクセスできます(さらに、DLL でそれらを変更すると、再構築せずにプログラムでも変更されます) 。cmyClassInstancemyClassInstance->getValues()

どうすればこれを解決できますか? インポートされたクラスからメソッドを呼び出すことは可能ですか?

ありがとうございました..

0 投票する
4 に答える
418 参照

c++ - ライブラリ (DLL) 関数から ui ポインターにアクセスする

こんにちは、非メンバー関数から ui を更新したいと思います。「this」ポインターを非メンバーとして渡す以外のヘルプは、ライブラリからのコールバックです。

以下は私のコードです:

メインウィンドウ.cpp

したがって、私が必要とするのは、非メンバーのコールバックから UI にデータを追加できることだけです。私を助けてください。

編集:コールバックを変更することは許可されていません

コメントに基づく編集:callback別のスレッドで呼び出されるため、そこからウィジェットメソッドを呼び出すとエラーが発生します'cannot send events to objects owned by a different thread'