cancel
Showing results for 
Search instead for 
Did you mean: 

App fails to update every attempt and has to be uninstalled and reinstalled.

TazmanUK
Level 2
OVRLibraryService v1.16.0.0.

I have an app on a beta channel which has a new version and keeps failing to update. The only way to get the updated version is uninstall the app and then reinstall. It has done this before with a previous update, but some updates have worked without any problems.

The error each time is...
Error moving old install directory.
Daybreak.Core.Io+IoException: Error installing '\\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\swap\myapp-0093fe8d-5c49-496d-9f9f-968b76813799'. ---> System.ComponentModel.Win32Exception: Access is denied

I tried using procman to see if it might provide any more info...
22:19:50.5286876 OVRLibraryService.exe 20672 CreateFile C:\Program Files\Oculus\Software\swap SUCCESS Desired Access: Append Data/Add Subdirectory/Create Pipe Instance, Synchronize, Disposition: Open, Options: , Attributes: n/a, ShareMode: Read, Write, AllocationSize: n/a, OpenResult: Opened
22:19:50.5289035 OVRLibraryService.exe 20672 SetRenameInformationFile C:\Program Files\Oculus\Software\Software\myapp ACCESS DENIED ReplaceIfExists: True, FileName: C:\Program Files\Oculus\Software\swap\myapp-0093fe8d-5c49-496d-9f9f-968b76813799
22:19:50.5290683 OVRLibraryService.exe 20672 CloseFile C:\Program Files\Oculus\Software\swap SUCCESS

I couldn't see anywhere in procman where myapp-0093fe8d-5c49-496d-9f9f-968b76813799 gets created.

Cut and paste from OVRLibraryService.log...
[Debug] [27/01/2018 22:19:43] Starting up OVRLibraryService v1.16.0.0.
[Debug] [27/01/2018 22:19:43] Starting up.
[Debug] [27/01/2018 22:19:43] IPC connection opened.
[Debug] [27/01/2018 22:19:43] IPC thread running; waiting for Oaf to connect.
[Debug] [27/01/2018 22:19:43] IPC connection established!
[Debug] [27/01/2018 22:19:43] App libraries for this user: [47de50d3-a5b1-4d41-b6a3-41755fe4b852, CORE_DATA]
[Debug] [27/01/2018 22:19:43] OVRLibraryService starting in direct mode.  Arguments: [library, install-chunked-package, 47de50d3-a5b1-4d41-b6a3-41755fe4b852, \\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\Downloads\myapp\45\myapp.zip, \\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\Downloads\myapp\45\myapp.sig]
[Debug] [27/01/2018 22:19:43] Creating NTFS transaction.
[Debug] [27/01/2018 22:19:43] Deleting directory '\\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\tmp'.
[Debug] [27/01/2018 22:19:43] Deleting directory '\\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\tmp\354b34e4-97f0-48da-b47f-d5e89f41df64'.
[Debug] [27/01/2018 22:19:43] Validating '\\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\tmp\37650906-cee2-4b75-bf50-1ced8fdea84c\package.zip' against signature '\\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\tmp\37650906-cee2-4b75-bf50-1ced8fdea84c\package.sig.
[Debug] [27/01/2018 22:19:43] File hash for \\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\tmp\37650906-cee2-4b75-bf50-1ced8fdea84c\package.zip: c71b817af5b5be6e86b0d7d54eac2cf8644ecbac29746c24df899973cd83d19d
[Debug] [27/01/2018 22:19:43] Decrypting ciphertext signature 'PgMGs/AQx8VDOExhqQLhQRQ23oUJO2bViyxaEfPULPtciw+zog8ZT6z4yYrD6lxS0RBib5t3pVj+S5e7T8/9QC5WK4FAPeQhkDNUSebjtD0mmp4RLyuKdRWZkzZpaDcAP7StlK55k+Hlf/S3I8lbpRAuD0hKaqbgBCSIQXP1yMHTLYp+w3xL5dTyjI3yUimNsQKv476J9jQ6HSoTjtFByyYikNMg26ULWwvxoK/IeTWMwvQeNEFNn2/OexmRa4WG9fbAeoBEZkDrlXYKgaa/NzVmp+aGLtEhHNiYl6CDBbbGZNS7neXgCUqXkvyfhxWRSko36g87dql40q2HxPfwBESgy7Ns6579z0Os5Ya6c2fTkb+CVLuanCYbVwYwveAU163OJIHjPPDIm3+agUO6sMRrRlap6JnK7BtWPxX3zJHzFJLIwoo8Yknsj/M1d9gL6q6gbVjfuxR+2HIzkJmf2vIQRVgCAXmoA1lE5ptciDOY12J/eA5PWM5juJg0ZnEOpwVLAfQ+O6bUFg1y+8eg9MyWMouO4rsJLIAWKjJjUqx/NHHGlWyOQ1IM4WCCwVXtWXA5WlkdmroL3LuFkQ/t2/Nr7tqkS0bqTOzzzEknqhIGN1mdXgkOIG4r1Cjz4VE7J3GGklTzDIcwnP6VcwvsOrLJFwvsSXxJvODJxuvPiQ4=' with primary key.
[Debug] [27/01/2018 22:19:43] Decrypted plaintext signature 'c71b817af5b5be6e86b0d7d54eac2cf8644ecbac29746c24df899973cd83d19d'.
[Debug] [27/01/2018 22:19:43] Ding!
[Debug] [27/01/2018 22:19:43] Loaded manifest for 'myapp' version code 45
[Debug] [27/01/2018 22:19:43] Committing changes.
[Debug] [27/01/2018 22:19:43] Found existing manifest for 'myapp' version code 44
[Debug] [27/01/2018 22:19:43] Creating NTFS transaction.
[Debug] [27/01/2018 22:19:43] Reusing existing staging directory
[Debug] [27/01/2018 22:19:43] Checking stale files
[Debug] [27/01/2018 22:19:43] Done checking stale files
[Debug] [27/01/2018 22:19:43] Computing hash map
[Debug] [27/01/2018 22:19:46] Committing changes.
[Debug] [27/01/2018 22:19:46] Number of chunks that need to be downloaded: 0.
[Debug] [27/01/2018 22:19:46] Creating NTFS transaction.
[Error] [27/01/2018 22:20:02] Error moving old install directory.
Daybreak.Core.Io+IoException: Error installing '\\?\Volume{39e3bef7-3a1e-49c2-af3d-ec8ef506be54}\Program Files\Oculus\Software\swap\myapp-0093fe8d-5c49-496d-9f9f-968b76813799'. ---> System.ComponentModel.Win32Exception: Access is denied
   --- End of inner exception stack trace ---
   at Daybreak.Core.Io.InstallTrustedFile(Nullable`1 transaction, String source, String dest)
   at Daybreak.OVRLibraryService.Packages.PackageOperation.<>c__DisplayClass6_0.<FinishChunkedPackageInstall>b__1()
   at Daybreak.Util.Mixins.Retryable[TExpectedExcept](Int32 tries, Action block)
   at Daybreak.OVRLibraryService.Packages.PackageOperation.FinishChunkedPackageInstall(ChunkedPackageInstaller packageInstaller, CommonManifest installedManifest, String stagingDir, String installDir, String hotSwapDir, ChunkedProgressUpdater updater, Func`2 finishAction, IntPtr transaction, Boolean inPlace)
[Debug] [27/01/2018 22:20:02] Operation failed.  Rolling back changes.
[Error] [27/01/2018 22:20:02] Exception in PerformBlockInTransaction():
System.Exception: Block returned ErrorInstallingStagingFiles.
   at Daybreak.OVRLibraryService.Libraries.LibraryController.<>c__DisplayClass17_0.<PerformBlockInTransactionDeprecated>b__0(IntPtr transaction)
   at Daybreak.Core.TxF.PerformBlockInTransaction(Func`2 block, Nullable`1 existingTransaction)
   at Daybreak.OVRLibraryService.Libraries.LibraryController.PerformBlockInTransactionDeprecated(Func`2 block)
[Warning] [27/01/2018 22:20:02] Oaf IPC connection lost!
[Debug] [27/01/2018 22:20:02] IPC connection destroyed.
[Debug] [27/01/2018 22:20:02] Exiting with code 46 (ErrorInstallingStagingFiles). 
2 REPLIES 2

edearl
Level 3
@imperativity, are you saying that the Oculus app needs to run with admin permissions? If so, shouldn't it be modified to request admin permissions when it starts?

TazmanUK
Level 2
@imperativity yes my windows account has administrator privileges.