Skip to content

Passthrough: Quickbooks QBW files won't open #325

@earonesty

Description

@earonesty

Bug Report

Passthrough fs does not work with Quickbooks, even if you change the sector size to 512.

How to Reproduce

If you download the trial version of Quickbooks here:

https://quickbooks.intuit.com/learn-support/en-us/new-subscriptions/download-a-trial-of-quickbooks-desktop/00/185974

And you build the passthrough.exe, and create the "sample qbw" file, and move it to a passtrhough fs, the file won't open.

  • First, I tried changing the sector size to 512, thinking this was: Passthrough: video files don't play #197. Because otherwise you get FileSystemControl: 0x90390 (Function 228, Method 0) Invalid device request.

  • Changing to 512 seems to evade that code path, but then again it does Control: 0x90390 (Device:0x9 Function:228 Method: 0) ... and, then you get an infinite loop of: FSCTL_GET_RETRIEVAL_POINTERS calls.

Behaviors

  • I would expect the FileSystemControl FSCTL_GET_RETRIEVAL_POINTERS to succeed the first time, and to return END OF FILE on the second call with the pointer advancement attempt - to better emulate NTFS behavior. NTFS responds this way.

  • Apparently AirFS works, but still has the FSCTL_GET_RETRIEVAL_POINTERS loop problem (making it very slow, but functional).

  • This mean that there is a unknown discrepency between AirFS and Passthru that causes a failure, but it is very hard to diagnose with procman, because the the FSCTL_GET_RETRIEVAL_POINTERS loop issue (millions of calls to that function happen while trying to figure out how airfs differs from passthru).

Environment

  • OS version and build: 10.0.18362
  • WinFsp version and build: 1.4.19049

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions