我有一个由前一个程序员编写的VB2005应用程序。我不得不将它移动到一个新的Windows 7盒子,因为它托管的xp盒子有灾难性的硬盘驱动器故障。它在xp盒子上工作正常,但它在Windows 7盒子上失败了。
更具体地说,我已将其追溯到特定的小节。它使用Process库启动ptyp,即putty scp命令行工具。它有一个等待400秒的定时器来关闭进程,否则它会停止进程并报告错误。
不幸的是,在Windows 7上,它似乎甚至没有启动进程,因为它不会等待指定的400秒,也不报告它会在pscp启动时给出的其他错误,但是失败了。是否存在与流程库的兼容性问题,或者是否存在某些配置问题?
更新
好的,经过更多测试后我确定子进程正在生成,但是父进程没有等待它退出。
似乎VB代码myProcess.WaitForExit(40000)
实际上并没有等到进程退出。这是因为它无法“看到”流程并认为 退出了吗?
答案 0 :(得分:0)
好吧,看来,脸上的手掌值得一试。其中一个开发者改变了这个东西,我从bin / debug文件夹中抓取了他指定的版本。不幸的是,他的设置并没有同时构建发行版和调试版。就像一个白痴,我没有费心去检查它上面的时间戳,我没有意识到调试版本还没有更新。
bin / debug文件夹中的版本已有几个月的历史了,并没有真正起作用。因此,我们尝试修复它的所有更改都没有被使用。我在这里学到了一些宝贵的经验教训,