問題タブ [shared-objects]

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 に答える
3610 参照

android - Tesseract OCR の「.SO」ファイル

Android アプリに Tesseract OCR (光学式文字認識) の「.so」ファイルを使用する必要があります。Tesseract OCRの「.so」ファイルを取得する方法を誰かに説明してもらえますか?

機能していない完全なプロジェクトをインポートしようとしました。

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

browser - フラッシュ共有オブジェクトが複数のPCで機能していません

SharedObjectを使用して、ユーザーのブラウザーに永続的な情報(訪問したスライドなど)を保存しています。たとえば、ユーザーがスライドにアクセスすると、そのスライドに移動するボタンが強調表示されます。ブラウザを閉じてWebサイトに再度アクセスした場合でも、そのボタンは強調表示されます。それは私のラップトップでうまくいきました。しかし、私が3人の同僚にテストのために派遣したとき。それらのうちの2つはそれに問題を抱えていました。もう1つはまったく問題ありません。

助言がありますか?前もって感謝します。

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

flash - 共有オブジェクトの構文

AS3 では、キーに具体的に名前を付けるのではなく、共有オブジェクトのキーを文字列の内容で設定したいと考えています。

私はテストを書きたくない私はこのようなものが欲しい

これは不可能な質問ですか?

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

c++ - 別のコンパイルユニットにあるスレッドと変数を安全に共有するにはどうすればよいですか?

私のプログラムの構造では、「どこから呼び出されるか」と「何が行われるか」を別々のソースファイルに分割しました。実用性の問題として、これにより、プログラムをスタンドアロンとしてコンパイルしたり、DLLに含めたりすることができます。以下のコードは実際のコードではなく、同じ点を示す単純化された例です。

ここには3つの相互作用するコンポーネントがあります。DLL、DLLとそのソースファイルをロードするカーネルモードプログラム、および個別に維持されるソースを含むユーティリティプログラムです。

DLL形式では、プログラムはスレッドとしてロードされます。カーネルモードアプリケーションベンダーのドキュメントによると、カーネルプログラムの初期化後にWin32 API関数を呼び出す機能が失われるため、スレッドをアクティブスレッドとしてロードします(ウェイクアップできないため、CREATE_SUSPENDEDを使用するのではありません)。

フラグ変数を監視して、エレガントではないが機能的なものを介して有用なことをいつ実行するかを認識できるようにします。

最大1秒の遅延は許容範囲内であり(プロセス全体が長く、頻繁に呼び出されることはありません)、システムに影響を与えることはないようです。

スレッドソースファイルで、変数を次のように宣言します

私が宣言したDLLソースファイル内

スレッドを実行する準備ができたら、DLLで設定します

std :: stringオブジェクトを揮発性として宣言するのに苦労したので、代わりに、スレッドのソースファイル内でパラメーターをグローバル変数として宣言し、スレッドのソースに常駐するDLL呼び出しセッターを使用しました。スレッドを自由にインスタンス化できれば、これらの文字列はパラメータになります。

(これらすべてに欠けているのは、スレッドセーフのために変数をロックすることです。これは私の次の「やるべきこと」です)

これは悪いデザインだと思います...機能的ですが複雑です。私が言及した制約を考えると、これを回避するためのより良い方法はありますか?

スレッドの作成時に文字列が空になる場合でも、スレッドの作成時に指定されたLPVOID lpParams変数を使用して文字列オブジェクトへのポインターを保持し、スレッドから直接アクセスすることで、修正の可能性があると考えていました。スレッドプログラムの宣言、セッターなどを完全に消去しますか?これが機能する場合は、一時停止フラグもそこで参照でき、extern宣言が削除されます(ただし、オプティマイザーを示唆するために、揮発性として宣言する必要があると思います)。

違いが生じる場合、環境はVisual Studio 2010、C ++、ターゲットプラットフォームWin32(XP)です。

ありがとう!

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

actionscript-3 - SharedObject 設定を削除する

Adobe Air アプリケーション用の ActionScript 3.0 を開発しました (Blackberry Playbook で実行されます)。

このアプリにはいくつかのバグがあり、アップデートを行いました。

ユーザーが新しいバージョンをインストールするときに、以前のユーザー データを削除したい。

どうやってやるの?

0 投票する
0 に答える
570 参照

android - SharedObject Array データを PHP WS for DB Query (Flex) に送信する方法

現在、Flex 4.5.1 を使用して Android アプリケーションを開発しています。SharedObject 配列に保存したデータを、データベース クエリのために Web サービスに渡そうとすると問題が発生します。以下のコードは、SharedObject にデータを格納する方法を示しています。

SharedObject をテストして、情報が正しく入力されているかどうかを確認しました。ここで、SharedObject からデータを取得し、それを PHP Web サービスに送信して DB クエリを実行するために、以下のコードを使用しました。

Flex で Web サービスをテストし、Int の配列 ( int[] ) を受け取るように構成しました。2 つのダミー値を使用してテスト操作を実行すると動作します。ただし、上記のコードを使用して Web サービスに共有オブジェクト データを渡そうとすると、次のエラーが発生します。

私が行っている作業を保護するために、特定のファイル名と場所を * に置き換えましたが、誰かがこの問題について私を助けてくれませんか?

ありがとう


わかりましたので、詳しく説明しましょう。これは、私が言ったように Android アプリ用に設計されていますが、私がやろうとしていることは、ローカル共有オブジェクトを使用して永続的にブックマークを保存することです。

上記のコードの最初のチャンクは、作成したいブックマークの LSO 属性を作成するように設計されており、Web ブラウザーのように異なる時間に複数のブックマークが設定される可能性があることを想像してください。これを行うために私が見つけた唯一の方法は、これらのアイテム/詳細を取得して更新する配列に保存してから、LSO に保存して保存することでした。

2 番目のコードは、ブックマークしたすべてのコンテンツのリストを含む「ブックマーク ページ」を想像することに関連しています。ここで私が望んでいたのは、ブックマークの ID を保持する LSO 属性を呼び出して、その詳細をリスト形式でロードできるようにすることでした。

LSO を作成し、ブックマークの詳細を保存して、それらを更新してエントリを追加できるようにしました。また、私が持っている PHP コードが ID の配列に関連するすべてのデータベース オブジェクトを引き戻すことを確認しました。これは flex を使用してテストされています。私ができないように見える唯一のことは、IDをPHP Webサービスファイルに渡すことです。それが役立つ場合、Web サービス ファイルのコードは以下のとおりです。


はい、私はすでにそれを試しましたが、ありがとう。SharedObjects に格納できるさまざまな種類のオブジェクトを試していたので、私は自分自身でさらに進歩しました。私はこのコードでソリューション部分を動作させることができました:

このコードは、bomark 情報を取得して arrayCollection に格納してから、bytesArray に転送して保存するように設計されています。

この次のコードは、SahredObjects bytesArray からその情報を取得し、配列コレクションに戻すように設計されています。

ただし、前述したように、アイテムのブックマーク (id) を 1 つだけ保存してブックマーク リストに移動すると、そのブックマークの詳細が正常に取得されますが、複数のブックマークを保存すると ( 2 つ以上の ID) ページは詳細をロードしません。エラーは発生しませんが、「1」と「2」ではなく ID の「1,2」を探しているため、ハングしていると思いますが、わかりませんこれがなぜなのか、またはこれを解決する方法。与えられたアドバイスに感謝しますが、この問題について私を助けることができる人がいないのは難しいと感じており、コードでさまざまな実験を行う必要があります. 誰かがこれで私を助けてくれますか?本当に感謝します:-)ありがとう

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

android - proguard から .so ファイルを除外するには?

これは、私の Android プロジェクトの現在の proguard 構成ファイルです。

Proguard が共有オブジェクトをいじろうとするのを防ぐ正しい方法は何でしょうか? 現在、それらをプロジェクトに追加してアプリケーションをエクスポートしようとするとすぐにエラーが発生します。行You should check if you need to specify additional program jars.を追加すると、次のようになります。Proguard 構成ファイルを修正するにはどうすればよいですか?-libraryjarsjava.io.IOException: Can't read [proguard.ClassPathEntry@56f0474c] (No such file or directory)

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

actionscript-3 - キオスクの保存データを管理する

私はキオスクを構築していますが、クライアントは、ユーザーがページに対して行ったクリック数をキオスクに保存することを望んでいます。初めて使用するときに sharedobject を初期化してから、sharedobject ページのクリック数を増やすように言われました。次に、結果を表示する別のアプリを作成できます。

これがこれまでに行われたのを見たことがないので、これがどのように行われるかについて誰かアドバイスやリンクを提供できますか? 基本的なスクリプトでお願いします。Flex や OOP は使用しないでください。

0 投票する
0 に答える
172 参照

c# - コンソールウィンドウが開いていて、それと話しているのですか?C ++ / C#、WindowsおよびLinux

私は、Linux(Ubuntu 11.04)およびWindows(XP)で実行されるDLL / SO( "C" externed)として組み込みC++アプリケーションを開発してきました。そのため、呼び出し元のアプリケーションがGUIを実行しているか、コンソールを実行しているか、どちらも実行していないかはわかりません。stdoutとstderrは、コンソールが接続されていないときにビットバケットを指していると思います。したがって、出力がページファイル/スワップファイルの無駄なスペースのどこかに文字通りあるのではないかと思いますが、coutまたはcerrに書き込むだけでは無害です。

したがって、私の現在の考えは、呼び出し元プログラムにコールバック関数(アドレス)を与え、その関数を(void)(*)(void *)のように見せることです。ここで、(void *)は呼び出し元のプログラムで明確に定義された構造体を指します。エラー/ステータス/その他の情報を書き込むことができる場所。以前、CとC ++で同様のことを行いましたが、少なくとも1人のC#呼び出し元がいることはわかっています。C#はそのようなコールバックを私に渡すことができますか?他の人が書くかもしれないデータを私が読むのに何か困難はありますか?

または、コンソールを開いてメッセージを書き込むこともできます。誰かがこれを行う方法を教えてもらえますか?

私はWindowsでメッセージボックスをポップアップするのを見ました、そして、thkatはするのが苦痛なことです。Linuxを見ていませんでした。誰かがchar*またはstd::stringsを使用した例を持っていますが、Windowsに必要なデータ型は何でもありませんか?

FWIW、私たちのアーキテクチャでは、ファイル、共有メモリ、名前付きパイプ、メッセージパッシング用のソケットはありません。また、プログラムとして書き込み可能なファイルの場所がわからないため、とにかくファイルに確実に書き込むことができなかったことを思い出してください。確かに、いくつかのsys opは、選択した場所へのユーザー書き込みを無効にします。アクセス可能なファイルパスとファイル名をユーザーが渡すことに依存する必要があります。

誰かが私の状況やアイデアについてコメントしてもらえますか?

どうもありがとう、

ウェス

コメント:fこれを正しく理解していますが、C ++ DLLライブラリからエラー/ステータス/デバッグメッセージをログに記録する適切な方法を見つけていますか?また、DLLコンシューマーのタイプ(C / C ++コンソール、C#GUI、..)についての知識がないため、stdoutに書き込んでも大丈夫かどうかわかりませんか?–m3rLinEz1時間前

まあ、正確ではありません。コンソールがないときにsdtout/stderrに書き込むと、出力がどこにも送信されず、スワップファイルが肥大化していないことを確認したいと思います。消費者に関係なく、stdoutに書き込んでも大丈夫だと思います。

それが実際に意味するのは、extern "C" DLLをC#プログラムにアタッチする方法を示し、プログラムにコールバックや変数/構造などを設定するために使用できるサンプルコードを教えてください。そして、そのアドレスをDLLに渡します。DLLは、var / struct/etcにデータを書き込むことができます。コールバックを呼び出します。W。

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

c++ - 共有オブジェクトからのアプリのオブジェクトの使用

私は今少し混乱しています。昨日、g ++で-rdynamicを使用しても、未定義のシンボルがありました。しかし、今はエラーがなく、それはさらに厄介です。

私の場合を少し説明するために、共有オブジェクトのようなプラグインを実行したいと思います。どちらが最善の方法かはまだ決めていません。

A)私の共有オブジェクトにはすべて、パラメーターを使用して呼び出されるレジスターと呼ばれる関数があります。これはプラグインマネージャーになります。

B)共有オブジェクトはクラスを定義し、ロード時にそのクラスのインスタンスを作成します。そのクラスのコンストラクターでは、アプリから静的シングルトンを取得し、自分で自動登録しようとします。

私が知る限り、私の最初の試みは今のところそれほど素晴らしいものではありませんでした。

main.cpp

main.hpp

two.cpp

そのサンプルでは、​​S::sharedが共有する静的オブジェクトです。この簡単なテストでは、intのみを使用しますが、将来的にはクラスのインスタンスになります。

ケースA)での私の唯一の試みは、セグメンテーション違反でした...私は本当に何を逃したのかわかりません。

//これまでの結果(今日)