2016-08-08 25 views
0

Windows用のTcl/tkアプリケーションをソースコードなしでデバッグすることは可能ですか?アプリケーションはサポートされておらず、利用可能なソースコードはありません。操作中にエラーが表示されます。エラーを引き起こす原因と、コードにパッチを当てることでエラーを修正できるかどうかを見つけることは可能ですか?Windows用Tcl/tkアプリケーションのデバッグ

答えて

1

パッチを作成する必要があるソースコードのレベルでは、ソースコードがなければ非常に困難です。コードがsendコマンド機構(またはcommパッケージ)を介して公開されている場合は、ほとんどの進歩を遂げることができます(デフォルトでTclにかなり良いイントロスペクション機能があるので、info commandsinfo varsinfo bodyなどが役立ちます) infoコマンドといくつかのイントロスペクサーもありますが)、特にコードの内部構造を理解していない場合は、これは本当に困難です。 OTOH、私は生産アプリケーションがこのように公開されることは期待しません。典型的には、あなたはそのようなことを開発の外には無効にします。

gdbのような標準的なデバッガは、特にTcl 8.6の非再帰的なランタイムでは役に立ちません。 (その環境の中のTclアプリケーションは、単に "実践している"ように効果的に現れる傾向がありますが、どういったものがどういったものであるかは実際には分かりません)

まず、実際にソースコードがあるかどうかを確認してください。コードはStarpackとしてまとめてパッケージされている可能性があります。sdxのようなツールを使用して変更を加える必要があるものを抽出することもできますが、それを成功させることはできません。コードがTDKのような商用ツールでコンパイル/隠蔽された場合、実際にはソースがなく、実際にはそれほど多くのことをすることはできません。 (DRMがうまくいかないことを意味するのと同じ一般原則によって、TDKが生成するファイル.tbcを逆コンパイルすることは可能ですが、実際には道義的には道徳的にむしろ不法であるため、 、本当にひどい出力を生み出す傾向があります)。代わりにコードの元の著者に連絡できますか?それがうまくいくと、安く簡単になるでしょう...

もし人間が読めるコードを実際に持っていれば、たとえsdxでパッケージ化されていても、もっとたくさんのことができます。

+0

PE exeコードがStarpackとしてまとめられていることを確認するにはどうすればよいですか? Linuxの 'strings file.exe'コマンドは多くの詳細を表示しますが、わかりません。 – fxgreen

関連する問題