Hello,
We are trying to ThinApp an application. This application when it's running, it need access CD. Is there any way to package them together? so it can run under ThinApp?
Thanks. Any thoughts or comments will be appreciated.
.
From Manual:
VirtualDrives
The VirtualDrives parameter specifies additional drive letters that are available to the application at
runtime.
Virtual drives are useful when applications rely on hard‐coded paths to drive letters that might not be
available on the client computers. For example, certain legacy applications might expect that the
drive is a
CD‐ROM and that data files are available at D:\media.
Virtual drives are visible only to applications running in the virtual environment. Virtual drives do not affect
the physical Windows environment. Virtual drives inherit isolation modes from the default isolation mode of
the project unless you specifically override the mode. If you configure your virtual drive with the
IsolationMode parameter set to Merged, any write operations to that drive fail if it does not exist on the
physical system.
A project lists virtual drive information for drives that are present at the time of application capture.
The VirtualDrives parameter uses semicolons to separate information assigned to different drive letters and
commas to separate parameters for individual drive letters. The VirtualDrives parameter includes this
information:
Drive is a single character between A and Z.
Serial is an eight digit hex number.
Type is FIXED, REMOVABLE, CD-ROM, or RAMDISK.
FIXED-Indicates fixed media.
For example, a hard drive or internal Flash drive.
REMOVABLE-Indicates removable media.
For example, a disk drive, thumb drive, or flash card reader.
CD-ROM-Indicates a CD‐ROM drive.
RAMDISK-Indicates a RAM disk.
Examples
The VirtualDrives parameter is a single string that can hold information for multiple drive letters, and
optional parameters for those drive letters.
VirtualDrives= Drive=A, Serial=12345678, Type=REMOVABLE; Drive=B, Serial=9ABCDEF0, Type=FIXED
Basic usage involves specifying a single virtual drive letter. By default, ThinApp assigns a serial number and
the FIXED type to the drive.
You can specify the X, D, and Z virtual drive letters.
VirtualDrives=Drive=X, Serial=ff897828, Type=REMOVABLE; Drive=D, Type=CDROM; Drive=Z
Drive X is a removable disk with the ff797828 serial number.
Drive D is a CD‐ROM drive with an assigned serial number,
Drive Z is a FIXED disk with an assigned serial number.
Change Virtual Drive Isolation Settings
You might need to use the ##Attributes.ini file to change the isolation mode of a virtual drive.
To specify the isolation mode for a virtual drive
1 Add the %Drive_X% folder to your ThinApp project.
2 In the new directory, add the ##Attributes.ini file to specify the isolation mode for the drive letter.
Ondrej Zilinec - Cievo
...Good question is half of the answer...
I must read manual carfully. Thank you very much for pointing out this...
Great help.
Question:
Serial is an eight digit hex number. Where does the serial number come from? Is it chosen at random?
Hello
Read documentation. You can assign your own serial number or let system to generate one for you.
Ondrej Zilinec - Cievo
...Good question is half of the answer...
Hi,
I am having the same CD-ROM issue. Were you able to find a solution?
Creating a virtual CDROM is very easy. If it will work with your application is a completely different matter. Many apps look at different properties of the CDROM in order to allow execution. We will virtualize some of these, device type, drive letter and the serial number but others can we not virtualize, like the label of the drive.
To activate a virtual CDROM using the drive letter X, add below to your project..
1. In package.ini
VirtualDrives=Drive=c, Serial=501f680c, Type=FIXED; Drive=X, Type=CDROM
If you need to specify a serial number to the CDROM add: Drive=X, Serial=123456, Type=CDROM instead.
2. In the root of the project folder add a folder called %Drive_X% and add the content of your CDROM into it.
Please make make sure to build with ThinApp version 4.6 or 4.6.1.
