代码之家  ›  专栏  ›  技术社区  ›  Booji Boy

vista上的vb6应用程序运行缓慢,但有很多“不允许使用快速IO”

  •  0
  • Booji Boy  · 技术社区  · 16 年前

    我有一个客户机正在运行他们在Vista上编写的自定义vb 6应用程序。该应用程序在Vista上安装并运行良好。但是,在一台Vista PC上,应用程序的加载和运行速度非常慢。我让它运行了一个进程监视器跟踪,看到了大量“fast io disallowed”结果以及其他问题。什么会导致“fast io disallowed”以及如何修复?请参见下面的部分跟踪:

    更新:应用程序似乎加载正常,但在打开报告时运行缓慢等。

    更新:我有一个电脑的痕迹,它工作正常。但是,我认为速度慢是因为他们让ODBC跟踪处于开启状态。有很多这样的:

    10:06:30.7641621 AM Cert.exe    2940    WriteFile   C:\Users\clw\AppData\Local\Temp\SQL.LOG SUCCESS Offset: 15,622,144, Length: 4,096, I/O Flags: Non-cached, Paging I/O, Synchronous Paging I/O, Priority: Normal
    

    10:03:41.8117795 AM Cert.exe    2940    FileSystemControl   C:\Program Files    END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8120107 AM Cert.exe    2940    FileSystemControl   C:\Program Files\cert client    END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8132994 AM Cert.exe    2940    FileSystemControl   C:\Users    END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8135160 AM Cert.exe    2940    FileSystemControl   C:\Users\clw    END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8139291 AM Cert.exe    2940    FileSystemControl   C:\Users\clw\AppData\Local  END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8141457 AM Cert.exe    2940    FileSystemControl   C:\Users\clw\AppData\Local\Temp END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8143618 AM Cert.exe    2940    FileSystemControl   C:\Windows  END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8152178 AM Cert.exe    2940    FileSystemControl   C:\Windows\AppPatch END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8156104 AM Cert.exe    2940    FileSystemControl   C:\Windows\System32 END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8159341 AM Cert.exe    2940    FileSystemControl   C:\Windows\System32\en-US   END OF FILE Control: FSCTL_FILE_PREFETCH
    10:03:41.8364376 AM Cert.exe    2940    CreateFile  C:\Users\clw\AppData\Local\Temp\~DF9022.TMP NAME NOT FOUND  Desired Access: Read Data/List Directory, Execute/Traverse, Read Attributes, Disposition: Open, Options: Non-Directory File, Complete If Oplocked, Attributes: N, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8365446 AM Cert.exe    2940    CreateFile  C:\Users\clw\AppData\Local\Temp\~DFD6E5.TMP NAME NOT FOUND  Desired Access: Read Data/List Directory, Execute/Traverse, Read Attributes, Disposition: Open, Options: Non-Directory File, Complete If Oplocked, Attributes: N, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8366473 AM Cert.exe    2940    CreateFile  C:\Users\clw\AppData\Local\Temp\~DFCFD9.TMP NAME NOT FOUND  Desired Access: Read Data/List Directory, Execute/Traverse, Read Attributes, Disposition: Open, Options: Non-Directory File, Complete If Oplocked, Attributes: N, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8458081 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\MSVBVM60.DLL   FAST IO DISALLOWED  
    10:03:41.8458819 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\MSVBVM60.DLL   NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8460056 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\msvbvm60.dll    FAST IO DISALLOWED  
    10:03:41.8465561 AM Cert.exe    2940    RegOpenKey  HKLM\System\CurrentControlSet\Control\SafeBoot\Option   REPARSE Desired Access: Query Value, Set Value
    10:03:41.8465840 AM Cert.exe    2940    RegOpenKey  HKLM\System\CurrentControlSet\Control\SafeBoot\Option   NAME NOT FOUND  Desired Access: Query Value, Set Value
    10:03:41.8466314 AM Cert.exe    2940    RegQueryValue   HKLM\SOFTWARE\Policies\Microsoft\Windows\safer\codeidentifiers\TransparentEnabled   NAME NOT FOUND  Length: 80
    10:03:41.8466735 AM Cert.exe    2940    RegOpenKey  HKCU\Software\Policies\Microsoft\Windows\Safer\CodeIdentifiers  NAME NOT FOUND  Desired Access: Query Value
    10:03:41.8503387 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\shimeng.dll FAST IO DISALLOWED  
    10:03:41.8513365 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\shimeng.dll FAST IO DISALLOWED  
    10:03:41.8524301 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\apphelp.dll    FAST IO DISALLOWED  
    10:03:41.8525127 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\apphelp.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8526418 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\apphelp.dll FAST IO DISALLOWED  
    10:03:41.8535673 AM Cert.exe    2940    RegOpenKey  HKLM\System\CurrentControlSet\Control\SafeBoot\Option   REPARSE Desired Access: Query Value
    10:03:41.8535961 AM Cert.exe    2940    RegOpenKey  HKLM\System\CurrentControlSet\Control\SafeBoot\Option   NAME NOT FOUND  Desired Access: Query Value
    10:03:41.8536132 AM Cert.exe    2940    RegOpenKey  HKLM\System\CurrentControlSet\Control\Session Manager\AppCompatibility  REPARSE Desired Access: Query Value
    10:03:41.8536279 AM Cert.exe    2940    RegOpenKey  HKLM\System\CurrentControlSet\Control\Session Manager\AppCompatibility  NAME NOT FOUND  Desired Access: Query Value
    10:03:41.8536435 AM Cert.exe    2940    RegOpenKey  HKLM\Software\Policies\Microsoft\Windows\AppCompat  NAME NOT FOUND  Desired Access: Query Value
    10:03:41.8540884 AM Cert.exe    2940    RegQueryValue   HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\ShowDebugInfo  NAME NOT FOUND  Length: 256
    10:03:41.8554647 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8563921 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8584068 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\USERENV.dll    FAST IO DISALLOWED  
    10:03:41.8584865 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\USERENV.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8586292 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\userenv.dll FAST IO DISALLOWED  
    10:03:41.8596784 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\Secur32.dll    FAST IO DISALLOWED  
    10:03:41.8597688 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\Secur32.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8598876 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\secur32.dll FAST IO DISALLOWED  
    10:03:41.8609065 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\WINSPOOL.DRV   FAST IO DISALLOWED  
    10:03:41.8609847 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\WINSPOOL.DRV   NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8611001 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\winspool.drv    FAST IO DISALLOWED  
    10:03:41.8621551 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\MPR.dll    FAST IO DISALLOWED  
    10:03:41.8622367 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\MPR.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8623555 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\mpr.dll FAST IO DISALLOWED  
    10:03:41.8635846 AM Cert.exe    2940    RegQueryValue   HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DllNXOptions\MSVBVM60.DLL    NAME NOT FOUND  Length: 1,024
    10:03:41.8640720 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8647012 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8652669 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8658389 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcGenral.dll    FAST IO DISALLOWED  
    10:03:41.8671217 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcGenral.dll    FAST IO DISALLOWED  
    10:03:41.8685097 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\UxTheme.dll    FAST IO DISALLOWED  
    10:03:41.8685815 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\UxTheme.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8687057 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\uxtheme.dll FAST IO DISALLOWED  
    10:03:41.8698204 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\WINMM.dll  FAST IO DISALLOWED  
    10:03:41.8698927 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\WINMM.dll  NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8700262 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\winmm.dll   FAST IO DISALLOWED  
    10:03:41.8710641 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\OLEACC.dll FAST IO DISALLOWED  
    10:03:41.8711384 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\OLEACC.dll NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8712509 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\oleacc.dll  FAST IO DISALLOWED  
    10:03:41.8731507 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\NETAPI32.dll   FAST IO DISALLOWED  
    10:03:41.8732118 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\NETAPI32.dll   NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8733267 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\netapi32.dll    FAST IO DISALLOWED  
    10:03:41.8744751 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\MSACM32.dll    FAST IO DISALLOWED  
    10:03:41.8745411 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\MSACM32.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8746462 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\msacm32.dll FAST IO DISALLOWED  
    10:03:41.8754788 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\VERSION.dll    FAST IO DISALLOWED  
    10:03:41.8755423 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\VERSION.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8756391 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\version.dll FAST IO DISALLOWED  
    10:03:41.8765001 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\sfc.dll    FAST IO DISALLOWED  
    10:03:41.8765651 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\sfc.dll    NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8766658 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\sfc.dll FAST IO DISALLOWED  
    10:03:41.8774055 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\sfc_os.DLL FAST IO DISALLOWED  
    10:03:41.8774647 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\sfc_os.DLL NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8775795 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\sfc_os.dll  FAST IO DISALLOWED  
    10:03:41.8787514 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\dwmapi.dll FAST IO DISALLOWED  
    10:03:41.8788140 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\dwmapi.dll NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    10:03:41.8789108 AM Cert.exe    2940    QueryOpen   C:\Windows\System32\dwmapi.dll  FAST IO DISALLOWED  
    10:03:41.8809343 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8814584 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcGenral.dll    FAST IO DISALLOWED  
    10:03:41.8819923 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8824723 AM Cert.exe    2940    QueryOpen   C:\Windows\AppPatch\AcLayers.dll    FAST IO DISALLOWED  
    10:03:41.8828336 AM Cert.exe    2940    QueryOpen   C:\Program Files\cert client\SHUNIMPL.dll   FAST IO DISALLOWED  
    10:03:41.8828918 AM Cert.exe    2940    CreateFile  C:\Program Files\cert client\SHUNIMPL.dll   NAME NOT FOUND  Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a
    
    3 回复  |  直到 16 年前
        1
  •  2
  •   AnthonyWJones    16 年前

    您是否让它在工作机器上运行与控制测试相同的监视器?

    我认为您可能会发现快速IO失败是正常的(API设计为先尝试快速IO,然后在失败时回退到更传统的方法)。不管怎样,这都将是一个机器配置问题(如驱动程序问题),而不是编程问题。

        2
  •  0
  •   Mitch Wheat    16 年前

    尝试重新安装Microsoft VB6运行时组件。

        3
  •  0
  •   Booji Boy    15 年前

    他们让ODBC跟踪保持在开启状态,这就是速度慢的原因。关闭ODBC跟踪修复了它。谢谢大家。