レンダリング/入力にSFMLを使用するプログラムを書いています。問題は、ほとんどのウイルス対策プログラムがそれをある種のマルウェアとして検出することです。プログラムが起動するとすぐにアラートを表示するもの (ビジュアル スタジオのデバッグ モードでも) もあれば、キーボード入力が発生したときにアラートを表示するものもあります。私の質問: 1) なぜこれが起こるのか分かりますか? 2) どうすれば回避できますか?
ps SFML は私が使用する唯一のライブラリであり、残りは私のコードです。
レンダリング/入力にSFMLを使用するプログラムを書いています。問題は、ほとんどのウイルス対策プログラムがそれをある種のマルウェアとして検出することです。プログラムが起動するとすぐにアラートを表示するもの (ビジュアル スタジオのデバッグ モードでも) もあれば、キーボード入力が発生したときにアラートを表示するものもあります。私の質問: 1) なぜこれが起こるのか分かりますか? 2) どうすれば回避できますか?
ps SFML は私が使用する唯一のライブラリであり、残りは私のコードです。
キーボードの処理に DirectInput7 を使用する一部のアプリケーションは、特定の (ダム) AV ソフトウェアおよびファイアウォールによって「キーロガー」として検出されることがあります。
ソースから sfml をコンパイルした後にこの問題が発生し、システムに問題がなく、ウイルス/マルウェアの定義が曖昧な「一般的なマルウェア」である場合、誤検出である可能性があります。非常にまれですが、ソフトウェアをコンパイルすると、ウイルス対策ソフトウェアで誤検知が発生することがあります (たとえば、mingw で glib-2.0 をコンパイルすると、アバスト ウイルス対策で大量のウイルス アラートが生成されます。すべてのモジュール テストまたは gio を使用するプログラムは、マルウェアとして検出されます)。
もちろん、sfml 関連の dll がウイルスに感染している可能性もあります (自分でコンパイルしていない場合)。
自分でコンパイルしました。Avast と Microsoft Security Essentials は一般的なマルウェアの警告を表示し、Norton は実行可能ファイルを強制的に削除します。
誤検知であることが確実な場合は、ウイルス対策の 1 つに除外リストが含まれているはずです。ライブラリを偽陽性として AV ソフトウェア メンテナーに報告することもできます。そうしないと、APP を配布することにした場合、ユーザーは同じ問題に直面することになります。また、アプリの配布を計画している場合は、コンパイル済みのバイナリを使用することをお勧めします。1 つ目は、プリコンパイルされたバイナリがウイルス アラートをトリガーしない可能性があることです。2 つ目は、ウイルス対策ソフトウェアがそれらを「通常の」感染していない実行可能ファイルとして認識している可能性があることです。3 つ目は、ライブラリのコンパイルが完了するまで待つ必要がないことです。
AV ソフトウェアに除外リストがない場合、または事前にコンパイルされた pbinary もウイルス アラートを引き起こす場合は、sfml から別のもの ( libSDL など) に切り替えることができます。