問題タブ [application-verifier]
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.
windows-store-apps - アプリケーションベリファイア6.2(x64)AVRF:ベリファイアログファイルステータスの作成に失敗しましたC0000022
私のWindowsStoreアプリは認定テストから拒否され続けており、appverifのLuaPriv-checkを実行すると、結果として生じるクラッシュを再現することができました。しかし、私はこの出力を取得します:
AVRF:ベリファイアログファイル\ ?? \ C:\ Users \ xx \ AppVerifierLogs \ yy.exe.0.dat(ステータスC0000022)の作成に失敗しました
プロセスモニターは、yy.exeがこのフォルダーのCreateFile操作でアクセスを拒否されたことを通知します。すべてのユーザーにフルアクセスを設定しました(ログに報告されたユーザーはフォルダーの所有者と同じでした)。VisualStudioとApplicationVerifierを管理者として実行していますが、これは当てはまらないようです。ユーザーxxにwin8でこのフォルダーへのフルアクセスを許可する正しい方法は何ですか?確認のために別のログフォルダを使用しようとしましたが、成功しませんでした。Store-appsでこのツールを使用できる人は他にいますか?
この投稿では、同様の問題について説明しています。推奨される回避策のようにAppVerif–sppath C:\ MyLogsLocationを実行しようとすると、AVRFが発生します。エラー:画像名が正しくありません:<appverif -enableを実行すると、ロックが処理されます-for myapp.exe -sppath c:\ MyLogsLocation
c++ - AppVerifierのエラーパターン`fafa`の意味は何ですか?
私のプログラムはアプリベリファイアでクラッシュしていますが、クラッシュを完全には理解していません。ファイルのバイト数から動的に割り当てられるバッファがあります。
dwSizeBytes
(これはクラッシュダンプで確認できます)はどこにありますか38
。この後、ファイルからいくつかのデータを読み取りました。
これは、バッファの最後の2バイトをNULLのままにして、バッファがNULLで終了するように36
割り当てます。ただし、アプリベリファイアでは、後でバッファからdwSizeBytes
を構築しようとするとクラッシュが発生します。std::wstring
windbgでバッファの割り当てブロックを見ると、次のようになっていることがわかります。
0x26
私のバッファのサイズが38であることに注意してください。今、私はそれが自己であるバッファを見て、見ます:
これは、私のバッファがいっぱいになったことを示していますがReadFile
、NULL
が残っているはずでbuf[36]
あり、buf[37]
(memsetを思い出してください)アプリベリファイアのフィルコードがありますfafa
(ユニコードバイトが反転しているのでd0d0
、実際にはの後にありfafa
ます。
私はここを見てきました:これは、アプリベリファイアが割り当て後にこれらのフィルコードを残す方法を示しています。しかしfafa
、リストされていないので、それはどういう意味ですか?memset
そして、なぜそれはクリアされるべき場所にあるのですか?
qt - QDialog でメモリ リークが発生している理由を検出できません
ユーザー入力用にカスタマイズされた QDialogs を使用して Qt を使用するプロジェクトを行っています。開発ボックスのハードウェアの制約により、アプリのメモリ使用量を監視したいと考えています。ダイアログの実行方法。
ダイアログはローカル変数であるため、スタック上に作成され、関数が終了するとすぐに破棄されることを期待しています (5 行目以降)。'Memory (Working Set)' and 'Memory (Private Working Set)'
アプリがダイアログを繰り返し開いたり閉じたりすると、そのメモリ使用量が増加し、初期値 [タスク マネージャーの列] に戻ることはありません。Application Verifierを使用して、すべての基本的なテストを有効にしましたが、エラーは表示されません。メモリ パターンは次のようになります (数値は図のみで構成されています)。
- アプリケーションの開始 (ワーキング セット = 12000K、プライベート セット = 6000K)
- Dialog-1 を開く (ワーキング セット = 14000K、プライベート セット = 7000K)
- ダイアログを閉じる (ワーキング セット = 12010K、プライベート セット = 6005K)
- Dialog-2 を開く (ワーキング セット = 14020K、プライベート セット = 7000K)
- ダイアログを閉じる (ワーキング セット = 12010K、プライベート セット = 6008K)
- Dialog-3 を開く (ワーキング セット = 14080K、プライベート セット = 7010K)
- ダイアログを閉じる (ワーキング セット = 12040K、プライベート セット = 6008K)
- ...
では、問題の根本原因を追跡するためのアイデアはありますか? (実際には、 QFileDialog の静的メソッドを使用するときにも同様の問題に直面しておりgetOpenFileName
、ここgetSaveFileName
でいくつかの議論を見つけましたが、解決されていないようです)
編集ダイアログで QFormLayout を使用し、 でウィジェットを追加しますlayout->addRow("label text", mywidget);
。オブジェクトの破棄でラベルをきれいに削除できないかどうかは疑問です。
編集同じ add-widget 戦略を使用して、QDialog に 10 個の QLineEdit があるテスト プログラムを作成しました。問題はまだ存在します。(ダイアログを頻繁に作成して閉じると、このテスト プログラムで問題が発生します。1 秒間に 10 回と言います)
メインウィンドウ.h
メインウィンドウ.cpp
プラットホーム
- Win 7 x64、MinGW 4.7.2 x64 (rubenvb-build)、4GB RAM
- Qt 4.8.5 (上記のツールチェーンを使用してネイティブにビルド)
- Qt-Creator 2.6.1 (上記のツールチェーンを使用してネイティブにビルド)
qt - Qt アプリケーション: VERIFIER STOP 00000013: 現在のスタック トレースに対する最初のアクセス違反
1 週間以来、Qt アプリケーションが機能しません。私はこのヒープの破損、アクセス違反などについてよく知りませんでした。今、私はそれがひどく「痛い」ことを知っています,-)
その間、アプリケーション検証ツールをインストールしました。私はVS2010、Qt 4.8.4、qwt 6.0.0を使用しています。ここで、GUI クラスを最小限に減らしましたが、アプリケーション検証ツールを介してアクセス違反が発生しました。これは GUI コードです。
mygui.h:
mygui.cpp:
および大きな自動生成された ui_mygui.h (文字制限のため、途中の一部をスキップしました):
これは問題なくコンパイルされます。しかし、(アプリケーション検証ツールを使用して) アプリケーションを起動すると、メソッドの後にトリガーされたブレークポイントが表示されます
in ui_mygui.h が完成し、MYengine のコンストラクタが入ります。コンストラクターの行は実行されず、ブレークポイントをトリガーするだけです。これは検証レポートです。
===================================== VERIFIER STOP 00000013: pid 0x1CDC: ファースト チャンス アクセス違反現在のスタック トレース用。
====================================== この検証停止は継続可能です。デバッグ後、「go」を使用して続行します。
=======================================
1行だけ削除すると
mygui.cpp で、Gui が開きます。アプリケーション検証ブレークポイントはありません。すべて正常に動作しているようです。
私は完全に迷っています。class MYengine は、数百の追加クラスを含む静的ライブラリに埋め込まれた大きなクラスです。Myengine のコンストラクターの最初の行が実行される前でも、エラーが発生します。では、上記の行がある場合とない場合で、なぜ動作が大きく異なるのでしょうか? どんなアイデアでも大歓迎です。このコードは私を作り始めています、-(
windows-7 - アプリケーション検証ツールのインストールの問題
Visual Studio 2010 でアプリケーションのヒープ破損を検出するためのアプリケーション検証ツールをインストールしました。実行する OS は Windows 7 です。私が抱えている問題は非常にばかげています。アプリケーション検証ツールを起動できません。プログラムメニューにインストールされていることを読みました(ただし、そこにアプリケーションベリファイアが見つかりません)、またはAppVerif.exeを実行するだけです(どちらも見つかりません)。私のアプリケーション検証フォルダーには、REDIST.txt、vrfauto.dll、vrfauto.h、および vrfauto.idl ファイルしかありません。アンインストールして再インストールしてみましたが、フォルダーの内容は同じままで、コンピューターに AppVerif.exe の痕跡はありませんでした。この時点で、私は何をすべきかわかりません。アプリケーションが動かなくなり、次に進むことができません。お願い助けて!
c++ - MS "Application verifier" で実行すると D3DXCreateTexture が失敗する
タイトルにあるように、質問は簡単です: なぜ D3DXCreateTexture() は、Application Verifier で実行しているときに E_OUTOFMEMORY で失敗することがありますか? それがなければ - すべて正常に動作します。ほとんどの場合、もちろん、私が App Verifier を使用している理由があります。コード内にヒープ破損の状況がいくつかあるのではないかと疑っていますが、このエラーはデバッグまたはリリースで実行したときに発生したことはありません。App Verifier を使用した場合のみです (その後、デバッグとリリースで発生します)。Dr. memory は、結果に関してはあまり具体的ではなく、主に、私が話しているコードではなく、サードパーティのライブラリ (openssl、freefont、directx など) を指しています。何が起こっているのか、何か考えがありますか? 前もって感謝します。
windows - App Verifier がオンの場合、gethostbyname API が失敗する
ページ ヒープをオンにして Application Verifier でアプリケーションをテストしようとすると、問題が発生しました。「localhost」のような正当なホスト名であっても、gethostbyname API は常に失敗することが判明しました。この問題は、gethostbyname を使用した非常に単純なテスト アプリケーションでも試したすべての Win-7 または Server 2008 R2 で再現されます。
再現手順: appverifier で "page heap" と "UseLFGGuard..." チェックボックスをオンにし、gethostbyname(..) を使用して任意のアプリを実行します。
アプリケーション コードの例 (appverifier がオフの場合は「127.0.0.1」を出力し、appverifier がオンの場合は「getaddrinfo failed」を出力します):
最も珍しいことは、インターネットで何も見つけられなかったことです。これは既知の問題ですか? 回避策はありますか?
c# - Windows ストア アプリ アプリの検証に失敗しました
アプリ検証ツールを使用してアプリをデバッグしようとしていますが、このエラーが発生しました。これについて知っている人はいますか?