-1

コンパイルされたすべてのexeは逆コンパイルできます(ただし、多少の困難があります)が、Delphiアプリケーションフォームはexe内にdfmsとして保存され、(reshackerを使用して)簡単に見ることができます(すっごく簡単に)これらの問題を克服できますか、最初にdfmデータをoncreateにコピーすることを考えましたフォーム情報を非表示にできる手順。

これに対する良い解決策を教えてください。

コンプレッサー使いたくない

私のアプリケーションは少し大きいので、リソースを 1 つずつ dll に移植することはできません。効果的な解決策が必要です。

4

2 に答える 2

10

.dfm ファイルは、最終的な PE ファイルにリンクされるときに txt として保存されません。それらは、RCDATA Windows リソースに配置されるタグ付きバイナリ形式に変換されます。画像の場合、生のバイナリとして保存されます。アプリケーションのビルド中、.dfm ファイルはテキストまたはバイナリとして保存できます (フォーム デザイナーを右クリックすると、どちらかを選択するための選択肢があります)。これは、.dfm ファイル自体の形式にのみ影響します。最終的なバイナリにリンクされると、その形式にはまったく影響しません。

画像を定数配列に変換して (バイナリを読み取って、さまざまな言語形式で配列宣言を書き出すツールが多数あります)、それをインクルード ファイルとして使用することができます。もう 1 つの方法は、RSA や PGP などの一方向アルゴリズムを使用して画像を暗号化することです。これにより、誰かが画像を復号化するのを防ぐことはできませんが、秘密鍵を持っていないため、誰かが画像を置き換えることはできなくなります。

于 2010-11-01T16:07:01.957 に答える
1

これがアプリケーションイメージの保護に関するものである場合、あなたはすでに負けている側にいます:

https://stackoverflow.com/questions/455623/how-can-i-prevent-users-from-taking-screenshots-of-my-application-window

実行中のアプリケーションのスクリーンショットを作成することはいつでも可能です。

于 2010-11-01T16:06:07.053 に答える