What does NTSTATUS 0xC0190044 (STATUS_CANNOT_EXECUTE_FILE_IN_TRANSACTION) mean?

 
Previous Next
STATUS_TRANSACTION_REQUIRED_PROMOTION STATUS_TRANSACTIONS_NOT_FROZEN

STATUS_CANNOT_EXECUTE_FILE_IN_TRANSACTION

Execution is blocked until the transacted modification is resolved

STATUS_CANNOT_EXECUTE_FILE_IN_TRANSACTION appears when a file is open for modification in an unresolved transaction and another open asks for execute access. TxF allows isolated modification, but it cannot safely expose the changing image as executable code in that state.

This often affects installers, updaters, service managers, and self-updating applications that write an executable and then try to run or load it before the transaction has completed.

What to check

  • Whether the file is still open through a transacted write handle.
  • Attempts to create a process, load a DLL, map an image section, or scan executable metadata before commit.
  • Whether all transacted handles were closed before commit or rollback.
  • Whether the launch/load should be delayed until the final committed file is visible.

Useful distinction

This is not the same as a signature failure or invalid image format. The file may be valid after commit; the problem is trying to execute while the transaction outcome is still unresolved.

References


Looking for a different code? Search another status or error code.