問題タブ [tcldevkit]
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.
tcl - Tcl Dev Kit:パッケージstarkitが見つかりません
TclDevKit5.2を使用して最も単純なTCLアプリケーションをラップすることができません。
私は64ビットCentOSを使用していますが、ここでwatは次のようuname -a
に返します。
入力する場合:
(ここでempty.tclは空のファイルです)実行可能ファイルを生成しますが、./wrap
実行しようとすると./wrap
、次のように報告されます。
これがの最初の行です./wrap
:
私は何が間違っているのですか?starkit
パッケージはどこにありますか?多分私は何かを追加する必要がありadd_path
ますか?
TclDevKitの21日間の試用版を使用していますが、生成中に報告されたログは次の./wrap
とおりです。
tcl - インタラクティブなtclshセッションをTclDevKitでラップする方法は?
インタラクティブなtclshセッションをTclDevKitでラップするにはどうすればよいですか?
TclProを使用すると、これは次のようになります。
ラップsome.tcl
し、呼び出す./shell
とインタラクティブなtclshセッションが起動します。source some.tcl
そのシェルから入力すると、ラップされたファイルが呼び出されます。したがって-startup ""
、TclProに起動スクリプトを使用しないように指示します。
TclDevKitで同じことをするにはどうすればよいですか?試し-startup ""
ましたが効果がありませんでした。
tcl - TclDevKit-5.2 プレフィックス ファイルが存在しない
ActiveState のTclDevKit-5.2の試用版を使用しようとしています。
次のようなエラー メッセージが表示されます。
次のようなコマンドで単純な tcl ファイルをラップしようとすると、次のようになります。
ただし、ファイル /opt/TclDevKit-5.2/bin/tdkbase が存在し、/opt/TclDevKit-5.2/bin/tdkbase と入力すると、tclsh セッションが起動されます。
私は 64 ビットの CentOS を使用しており、uname -a が返すものは次のとおりです。
私は何を間違っていますか?プレフィックスファイルを使用するように tclapp を作成するにはどうすればよいですか?
tcl - カスタム TclDevKit プレフィックス ファイルを作成するには?
カスタム Tcl インタープリターを TclDevKit のプレフィックス ファイルとして使用したいと考えていますtclapp
。
次のファイルから構築された TCL インタープリターがあります。
main.cpp
次のコマンドでビルドします。
と通訳を取得しmyinterp
ます。
TclDevKit のオプションとして渡すことができるようにするには、上記main.cpp
のg++
コマンドをどのように変更すればよいですか?myinterp
-prefix
tclapp
bitmap - TclApp を使用してプログラムをラップし、Tcl/Tk でビットマップを発行する
TclApp を使用して、プログラムとそのすべてのファイルをスタンドアロンの実行可能ファイルにラップしています。99% のファイルで正常に動作しています。ただし、私の .ico ファイルをラップまたは認識していないようです...
私は Tcl/Tk でプログラムを書いており、メイン ウィンドウのアイコンを左上に次のように設定しようとしています。
プログラムをラップした後、.exe ファイルが .ico ファイルと同じディレクトリにある場合にのみ、アイコンで正しく破棄されます。他の場所にはありません。これは、そもそも TclApp で Tcl プログラムをラップするという全体的な目的に反しています。TclAppは仮想ファイル システムの .tcl ファイルで .ico ファイルをラップするので、.exe ファイルがどこにあるかに関係なく、アイコンを見つけることができます。
私はパスをより明示的に指定しようとしました:
そこには運がありません...
私が得るエラーは次のとおりです。
これに関して私が抱えている 2 つの問題: Tcl/Tk にはビットマップに何らかのバグがあるか、何かがうまくいかない傾向があることをインターネット上の多くのブログや投稿で読みました - 誰も詳しく説明していません。もう1つの問題は、TclAppがアイコンをtclスクリプトでラップする必要があるため、どこからでもプログラムを実行しても、.icoファイルと同じディレクトリにあるかのように動作するはずですが、そうではありません...
それで、どこが間違っているのですか?Tcl コードに問題がありますか、Tcl/Tk のビットマップに本当にバグがあるのでしょうか、それとも TclApp が正しく動作していないのでしょうか??
arrays - Tcl/Tk - 「UserArray」を読み取れません: 変数は配列です
ActiveState の TclDevKit デバッガーを使用してコードを確認していますが、プログラムの実行中のある時点で次のエラーが発生します。
私は Tcl/Tk を理解しているので、私がしていることは完全に有効で合法であるため、このエラーは私を完全に困惑させます。コードは次のとおりです。
Tcl では、配列内のインデックスからの読み取りと書き込みが許可されています。ここでエラーが発生することはないと思います...詳細が不足していますか?
tcl - tk_getSaveFile 指定されたディレクトリでダイアログを開きませんか? (Tcl/Tk)
この質問の前に、次の情報を記載する必要があります。この問題は、アプリケーションがTclAppでラップされている場合にのみ発生します。
Tcl プログラムをラップするとき、内部ファイル システムにまだラップされていない場合、プログラムがファイルを検索するために必要なディレクトリの場所に移動するlappend
必要があることを理解しています。auto_path
それが私が行ったことですが、私のコードは tk_getSaveFile ではなく tk_getOpenFile に対してのみ機能します。指定したディレクトリで保存ダイアログを開くのではなく、マイ ドキュメントで開きます。
これが本質的に私がやっていることです:
これがWindowsの問題ではないことを確認しました(プログラムで初めて保存/開いた後、ダイアログの開いている場所を保存します)。新しいシステムで初めてプログラムを実行すると、tk_getSaveFile My Documents で開きますが、tk_getOpenFile は正しいフォルダー「myFolder」で開きます。
何か案は?
編集:
非常に奇妙な問題も発生していることに気付きました。関連しているのではないかと思います。これで、C:\ の下の子ディレクトリにファイルを保存するときはいつでも、プログラムの開くダイアログと保存ダイアログからしかファイルを見ることができません。Windows エクスプローラーで同じ場所に移動すると、ファイルが表示されないだけでなく、まったく表示されません。ここで何が起こっているのですか?
編集:
私のプログラムは管理者権限で実行する必要がありました - そのため、本当に奇妙なエラー (2 番目のエラー) が発生しました。
windows-services - Tcl アプリケーションを Windows サービスとしてインストールするエラー
TclDevKit の TclServiceManager を使用して、Tcl プログラムをサービスとして Windows マシンにインストールしようとしています。ここのガイドを順を追って実行していますが、多くの問題が発生しています。
生の .tcl ファイルを使用してサービスを作成しようとすると、次のエラーが発生します。
ここで、この問題の解決策に従って、サービス コントロール マネージャーが終了する前にプログラムを起動する時間を増やしました。無駄に。
次に、TclApp を使用してプログラムをラップし、それが機能するかどうかを確認することにしました。ガイドにあるようbase-tclsvc-win32-ix86.exe
に、TclDevKit の bin ディレクトリにあるプレフィックス ファイルを使用しました。その方法でサービスをインストールしてから実行しようとすると、次のエラーが発生しました。
このエラーをグーグルで検索できる情報はほとんどありませんでした。それに関する唯一の Stackoverflow 投稿はこれです。そのため、コマンドプロンプトを使用して手動でサービスをインストールして<TheProgram>.exe <Service Name> -install
実行しようとしましたが、それでも同じエラーが発生しました。
次に、実行して有用な情報を取得できるかどうかを確認しようとしましたが<TheProgram>.exe <Service Name> -debug
、興味深いことに、次の出力が得られました。
グーグルInitTypes: failed to find the DictUpdateInfo AuxData type
は私をどこにも導きませんが、それはTclに関連しているようです。
最後に、サービスとしてインストールしようとしていたプログラムのソース コードは、単純な Web サーバー コードです。
ソースコードに問題があるかどうかを確認するために、特定のディレクトリにファイルを作成するだけの別の簡単な例を試しました。
両方のプログラムは、tclsh86.exe からソースを取得するだけで機能しますが、ラップされていないサービスとラップされているサービスとしてそれぞれ実行しようとすると、上記のエラーが発生します。
何か案は?