starkit无法加载pkgIndex.tcl

starkit无法加载pkgIndex.tcl,tcl,tk,starkit,Tcl,Tk,Starkit,我发布了一个用sdx包装的Tcl/Tk Windows应用程序 在myapp.vfs中,我有一个库,其中有一个pkgIndex.tcl文件: myapp.vfs | +-- mylib | | | +-- pkgIndex.tcl | +-- main.tcl 对于我的绝大多数用户来说,一切正常,但其中一些用户(不到0,1%)报告说,在他们的机器上,应用程序在启动时失败 从他们发给我的错误消息中,我可以看到,当我第一次使用mylib中的函数时,它会挂起 如果他们在另一台机

我发布了一个用sdx包装的Tcl/Tk Windows应用程序

在myapp.vfs中,我有一个库,其中有一个pkgIndex.tcl文件:

 myapp.vfs
 |
 +-- mylib
 |   |
 |   +-- pkgIndex.tcl
 |
 +-- main.tcl
对于我的绝大多数用户来说,一切正常,但其中一些用户(不到0,1%)报告说,在他们的机器上,应用程序在启动时失败

从他们发给我的错误消息中,我可以看到,当我第一次使用mylib中的函数时,它会挂起

如果他们在另一台机器上试用,一切正常

问题是我自己无法重现错误,一个用户的程序在XP系统上失败,运行在Win7/64上,另一个用户的程序在7上失败,运行在Vista上

我已经检查了他们的防病毒软件,他们的特权和所有的常规功能,但都没有成功

考虑到该应用程序成功地运行了数千个用户,但只有少数用户


问题是:在哪种情况下,starkit中某个库的pkgIndex.tcl可能(无声地)失败?

油嘴滑舌的回答是“在任何情况下”。他们的系统区域设置是什么?(关于我能想到的唯一一件事——不太了解starkit启动代码——是无法装载VFS的一些奇怪问题,但是
main.tcl
也应该丢失…)我同意这真的很奇怪:如果没有装载exe,那么main.tcl是如何执行的?所有机器的区域设置都是相同的,这让您怀疑什么?您可以尝试插入pkgIndex.tcl,查看它是否已加载,而只是其中的源/加载失败。如果它是一个C扩展,那么一台机器上存在的依赖库和另一台机器上缺少的依赖库可能会有一些问题(zlib和libpng是类似的典型候选库)。如果依赖项是二进制扩展,请尝试使用dependency walker检查依赖项来自何处。