A method for performing virtual application delivery, comprising: accessing, at a virtual computing instance (116 1, 116 2,... 116 N) running on a host machine, a datastore comprising a first virtual disk file, wherein the first virtual disk file comprises a plurality of partitions and each respective partition of the plurality of partitions is mapped to a respective virtual disk file of a plurality of virtual disk files separate from the first virtual disk file, wherein each of the plurality of virtual disk files comprises at least one application stored thereon and wherein the first virtual disk file further comprises some empty partitions which do not map to a virtual disk file; mounting the first virtual disk file as a plurality of volumes at the virtual computing instance (116 1, 116 2,... 116 N), each of the plurality of volumes corresponding to one of the plurality of partitions of the first virtual disk file; while the first virtual disk file is mounted: receiving, at the virtual computing instance (116 1, 116 2,... 116 N), one or more operations for accessing a given partition of the first virtual disk file, the one or more operations corresponding to a first application stored on a second virtual disk file of the plurality of virtual disk files; redirecting, based on the given partition, the one or more operations for accessing the first virtual disk file to the second virtual disk file; adding a mapping from one of the empty partitions of the first virtual disk file to a newly created third virtual disk file separate from the first virtual disk file and the plurality of virtual disk files, the third virtual disk file storing a second application; uncloaking, for the virtual computing instance (116 1, 116 2,... 116 N) which has access rights to the second application, the one of the empty partitions of the first virtual disk file which maps to the third virtual disk file; and accessing, at the virtual computing instance (116 1, 116 2,... 116 N), the second application. accessing, at a virtual computing instance (116 1, 116 2,... 116 N) running on a host machine, a datastore comprising a first virtual disk file, wherein the first virtual disk file comprises a plurality of partitions and each respective partition of the plurality of partitions is mapped to a respective virtual disk file of a plurality of virtual disk files separate from the first virtual disk file, wherein each of the plurality of virtual disk files comprises at least one application stored thereon and wherein the first virtual disk file further comprises some empty partitions which do not map to a virtual disk file; mounting the first virtual disk file as a plurality of volumes at the virtual computing instance (116 1, 116 2,... 116 N), each of the plurality of volumes corresponding to one of the plurality of partitions of the first virtual disk file; while the first virtual disk file is mounted: receiving, at the virtual computing instance (116 1, 116 2,... 116 N), one or more operations for accessing a given partition of the first virtual disk file, the one or more operations corresponding to a first application stored on a second virtual disk file of the plurality of virtual disk files; redirecting, based on the given partition, the one or more operations for accessing the first virtual disk file to the second virtual disk file; adding a mapping from one of the empty partitions of the first virtual disk file to a newly created third virtual disk file separate from the first virtual disk file and the plurality of virtual disk files, the third virtual disk file storing a second application; uncloaking, for the virtual computing instance (116 1, 116 2,... 116 N) which has access rights to the second application, the one of the empty partitions of the first virtual disk file which maps to the third virtual disk file; and accessing, at the virtual computing instance (116 1, 116 2,... 116 N), the second application. receiving, at the virtual computing instance (116 1, 116 2,... 116 N), one or more operations for accessing a given partition of the first virtual disk file, the one or more operations corresponding to a first application stored on a second virtual disk file of the plurality of virtual disk files; redirecting, based on the given partition, the one or more operations for accessing the first virtual disk file to the second virtual disk file; adding a mapping from one of the empty partitions of the first virtual disk file to a newly created third virtual disk file separate from the first virtual disk file and the plurality of virtual disk files, the third virtual disk file storing a second application; uncloaking, for the virtual computing instance (116 1, 116 2,... 116 N) which has access rights to the second application, the one of the empty partitions of the first virtual disk file which maps to the third virtual disk file; and accessing, at the virtual computing instance (116 1, 116 2,... 116 N), the second application.