上周工作中遇到一个奇怪的问题,解决之后想想还是写出来和大家分享一下。

故障描述:

在A程序中使用Process.Start方法调用一个B.exe的文件时,程序总会自动退出。

系统描述:Windows XP Pro SP3

尝试过的解决办法

  1. b.exe文件是存在的
  2. 手动执行b.exe是没有任何问题的。
  3. a程序调用一个c.exe也是没有问题的。

到此,我基本确认问题出在b.exe上面。 不过由于单独执行b.exe是没有问题的,所以找了半天,一直没解决这个问题。

 

突然间,我注意到手动执行b.exe时会弹出一个安全的对话框,需要点击确定 后才能执行,而我执行c.exe时并没有这个现象:

c#美味:NTFS中文件被锁定导致Process.Start失败

 

看到这里,想起我前段时间遇到的ppt文件总是需要修复的问题,我马上看了下文件属性:

c#美味:NTFS中文件被锁定导致Process.Start失败

 

果然,该文件被锁定了。 解除锁定后,故障得到解决。A程序可以顺利的调用b.exe了。

后来想了想,我更新这个文件的时候是通过一个im传过来的,可能是那个时候文件被锁定了。

相关文章:

  • 2021-06-15
  • 2021-11-15
  • 2021-10-08
  • 2021-12-29
  • 2021-11-27
  • 2021-08-17
  • 2021-04-03
  • 2022-02-19
猜你喜欢
  • 2021-07-18
  • 2021-08-25
  • 2022-12-23
  • 2022-01-30
  • 2022-12-23
  • 2022-02-08
  • 2021-09-22
相关资源
相似解决方案