Tkなしで使用されたスクリプトがあります。私がTkを追加すると、1行はウィンドウへのパスとして扱われ、私はその理由を理解しません。Tcl/Tk:ウィンドウパスでないときの "bad window path name"
エラーインフォアは次のようである: bad window path name "* Log directory: D:/tests/log/2016_10_13_17_30_29"
この行が実行されるときには、次のとおりです。
message "* Log directory: ${dirname}"
dirname
は、例えば、ディレクトリへのパスとして解決されます。
D:/tests/log/2016_10_13_17_30_29
message
ですファイルへのロギングの簡単な手順:
proc message {text} {
global test_log_filename
puts -nonewline $test_log_filename "[timestamp] "
puts $test_log_filename $text
}
Tkを使用していないときは正しく動作しています。私が理解しているように、Tkウィンドウへのパスとしてmessage
プロシージャ引数が必要ですが、その理由はわかりません。もちろん、そのようなウィンドウは存在しません。
また、私はmessage test
のようなものを呼び出して、引数の問題であることを確認しようとしました。それはエラーを与えるbad window path name "test"
あなたはそれを助けてくれますか?
ありがとうございました!愚かな私...私はそれを確認する必要があります... – bLAZ