第一步:创建工作目录。打开 Windows 命令提示符。这可能在开始菜单下,“附件”,“命令提示符”。键入命令“mkdir temp”,然后用“cd temp”cd 到这个目录:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\Owner>mkdir temp
C:\Documents and Settings\Owner>cd temp
C:\Documents and Settings\Owner\temp>
记下此目录的位置。它应该在提示符下告诉你。
第 2 步:下载必要的文件。您需要三样东西,一个包含 Tk 的基本工具包(它将成为包装应用程序的一部分)、sdx.kit(一个具有执行包装的命令的 tclkit)和 tclkit 的命令行版本(来自 sdx.kit将运行)。
下载这三个文件并将它们放在您创建的临时目录中。严格来说,这不是必需的,但它使本教程更容易。重命名命令行 tclkit,也是为了使本教程更容易:
C:\Documents and Settings\Owner\temp>dir
Volume in drive C has no label.
Volume Serial Number is F434-9FD3
Directory of C:\Documents and Settings\Owner\temp
09/05/2009 04:32 PM <DIR> .
09/05/2009 04:32 PM <DIR> ..
09/05/2009 04:21 PM 105,528 sdx.kit
09/05/2009 04:31 PM 1,268,686 tclkit-win32.upx.exe
09/05/2009 04:27 PM 668,142 tclkitsh-win32.upx.exe
3 File(s) 2,042,356 bytes
2 Dir(s) 13,232,046,080 bytes free
C:\Documents and Settings\Owner\temp>rename tclkitsh-win32.upx.exe tclkit.exe
第 3 步:确认一切正常。不带其他参数运行 sdx.kit。它应该打印出一些帮助信息:
C:\Documents and Settings\Owner\temp>tclkit sdx.kit
Specify one of the following commands:
addtoc eval fetch ftpd httpd httpdist ls lsk
md5sum mkinfo mkpack mkshow mksplit qwrap ratarx rexecd
starsync sync tgz2kit treetime unwrap update version wrap
For more information, type: sdx.kit help ?command?
C:\Documents and Settings\Owner\temp>
第 4 步:为您的代码创建一个目录。sdx 假定对于名为“myapp”的应用程序存在一个名为“myapp.vfs”的目录:
C:\Documents and Settings\Owner\temp>mkdir myapp.vfs
C:\Documents and Settings\Owner\temp>dir
Volume in drive C has no label.
Volume Serial Number is F434-9FD3
Directory of C:\Documents and Settings\Owner\temp
09/05/2009 04:37 PM <DIR> .
09/05/2009 04:37 PM <DIR> ..
09/05/2009 04:37 PM <DIR> myapp.vfs
09/05/2009 04:21 PM 105,528 sdx.kit
09/05/2009 04:31 PM 1,268,686 tclkit-win32.upx.exe
09/05/2009 04:27 PM 668,142 tclkit.exe
3 File(s) 2,042,356 bytes
3 Dir(s) 13,231,599,616 bytes free
C:\Documents and Settings\Owner\temp>
第 5 步:创建您的代码。创建一个名为“main.tcl”的文件并将其放在 myapp.vfs 目录中。使用记事本或您选择的文本编辑器。为文件提供以下内容:
package require Tk
label .l -text "Hello, world"
pack .l
验证 myapp.vfs 是否如下所示:
C:\Documents and Settings\Owner\temp>dir myapp.vfs
Volume in drive C has no label.
Volume Serial Number is F434-9FD3
Directory of C:\Documents and Settings\Owner\temp\myapp.vfs
09/05/2009 04:40 PM <DIR> .
09/05/2009 04:40 PM <DIR> ..
09/05/2009 04:40 PM 60 main.tcl
1 File(s) 60 bytes
2 Dir(s) 13,231,456,256 bytes free
第 6 步:使用 sdx 包装代码。在原始临时目录中使用您的工作目录,发出以下命令来包装您的代码。
C:\Documents and Settings\Owner\temp>tclkit sdx.kit wrap myapp -runtime tclkit-w
in32.upx.exe
1 updates applied
C:\Documents and Settings\Owner\temp>dir
Volume in drive C has no label.
Volume Serial Number is F434-9FD3
Directory of C:\Documents and Settings\Owner\temp
09/05/2009 04:43 PM <DIR> .
09/05/2009 04:43 PM <DIR> ..
09/05/2009 04:44 PM 1,272,604 myapp
09/05/2009 04:40 PM <DIR> myapp.vfs
09/05/2009 04:21 PM 105,528 sdx.kit
09/05/2009 04:31 PM 1,268,686 tclkit-win32.upx.exe
09/05/2009 04:27 PM 668,142 tclkit.exe
5 File(s) 3,315,000 bytes
3 Dir(s) 13,229,654,016 bytes free
第 7 步:将打包文件重命名为具有 .exe 后缀。sdx.kit 应该已经创建了一个名为“myapp”的文件。为了运行它,您需要将其重命名为“myapp.exe”。完成此操作后,您可以通过键入命令“myapp”或双击资源管理器窗口中的图标来运行它。
C:\Documents and Settings\Owner\temp>rename myapp myapp.exe
C:\Documents and Settings\Owner\temp>myapp
如果一切顺利,应该会弹出一个带有“Hello, world”标签的窗口