Page 1 of 2

Mount iso files using winarchive

Posted: 08 Jan 2012 16:13
by kotlmg
i am using winarchiver software to mount or unmount iso and other file formats using the following xyplorer script.
OpenWith """C:\Program Files (x86)\WinArchiver\WinArchiver.exe"" <items>";

the above script is able open the winarchinve window and i have to personally mount the selected files.
is it possible to mount or unmount files using xyplorer script and using the winarchive program.
i want new xyplorer window to be opened whenver the above code is run and also the window should point or move to the mounted drive.
is it possible to unmount/close the above application using the xyplorer script?
thanks in advance.

Re: Mount iso files using winarchive

Posted: 08 Jan 2012 17:43
by Stefan
kotlmg wrote:i am using winarchive software to mount or unmount iso and other file formats using the following xyplorer script.
OpenWith """C:\Program Files (x86)\WinArchiver\WinArchiver.exe"" <items>";

the above script is able to mount the selected files.
i want new xyplorer window to be opened whenver the above code is run
and also the window should point or move to the mounted drive.
can you please give me the extra lines of code to be added to the above code.
What says the WinArchiver help? Is there an option to say "mount as drive X:" ?

Or perhaps an dirty trick like

Code: Select all

$Before = get("drives", 2); // DRIVE_REMOVABLE
OpenWith """C:\Program Files (x86)\WinArchiver\WinArchiver.exe"" <items>";
$After = get("drives", 2 );
$NewDrive = Compare before/after
tab("new", $NewDrive);

is it possible to closed the above application using the xyplorer script?
thanks in advance.
Perhaps invoking windowsTM taskkill.exe?
Something like:

Code: Select all

run "cmd /c /IM WinArchiver.exe";

Re: Mount iso files using winarchive

Posted: 08 Jan 2012 18:11
by kotlmg
stefan, thanks for your kind reply. i have typed wrongly.
OpenWith """C:\Program Files (x86)\WinArchiver\WinArchiver.exe"" <items>";

the above script is only opening the winarchiver software window. presently i have got 4 drives created by winarchiver virtual drive as F,G,H,I.i have to manually mount or unmount files to these drives..
they have not shown any command line help for winarchiver program.
i don't know how to mount using the script.

Re: Mount iso files using winarchive

Posted: 12 Jan 2012 15:30
by kotlmg
stefan, i got power iso 4.9 virtual mounting software. it supports command line options also.

the application is installed in the following folder and path for application is
"C:\Program Files (x86)\PowerISO\PowerISO.exe". right now i have enabled 4 drives of power iso. they are L, M, N, O drives.

mount <file name> <drive>: Mount image file to virtual drive.

Example: Mount d:\test.iso to drive F: .

Command: piso mount d:\test.iso F:

unmount <drive|all>: Unmount image file.

Example: unmount drive F: .

Command: piso unmount F:

Example: unmount all drives.

Command: piso unmount all

can you please give the xyplorer script for mounting and unmouting files. whenever iso file is mounted it should be opened in new xyplorer window.

one more thing is the shell integration options shown in windows explorer are fully not accessible in xyplorer i.e the attached image options are not visible in xyplorer right click options. what should i do to get these options?
thanks in advance

Re: Mount iso files using winarchive

Posted: 12 Jan 2012 20:19
by Stefan
kotlmg wrote:stefan, i got power iso 4.9 virtual mounting software. it supports command line options also.

the application is installed in the following folder and path for application is
"C:\Program Files (x86)\PowerISO\PowerISO.exe".

right now i have enabled 4 drives of power iso. they are L, M, N, O drives.

mount <file name> <drive>: Mount image file to virtual drive.
Example: Mount d:\test.iso to drive F: .
Command: piso mount d:\test.iso F:
whenever iso file is mounted it should be opened in new xyplorer window.


unmount <drive|all>: Unmount image file.
Example: unmount drive F: .
Command: piso unmount F:


Example: unmount all drives.
Command: piso unmount all


can you please give the xyplorer script for mounting and unmouting files.


I am not fully sure about the right quoting of the run command (as always).
Perhaps we have to tweak this...
Test this script which uses MSG instead of RUN.
If all looks fine replace "msg" with "run"

Untested:

Code: Select all

"Mount..."
    end(recase("<curext>", "lower") != "iso"), "No ISO file selected, script ends.";
    $app = "C:\Program Files (x86)\PowerISO\PISO.exe";
    //mount <file name> <drive>: Mount image file to virtual drive.
    //Example: Mount d:\test.iso to drive F: .
    //Command: piso mount d:\test.iso F:

     $iso = quote("<curitem>");

    //inputselect(header, listdata, [separator=|], [style=1], [cancel], [width=600], [height=400], [windowcaption])
     $drive = inputselect("Mount as which drive?<crlf>$iso", L|M|N|O,,2,,650,250, "XYplorer PowerISO");
     end(strlen($drive) > 1), "Please select only one check box, script ends.";

     //run
       msg """$app"" mount $iso $drive:";

    //tab([operation], [data], [index])
       tab("new", $drive:);


//============================================


"Unmount..."
    $app = "C:\Program Files (x86)\PowerISO\PISO.exe";
    //unmount <drive|all>: Unmount image file.
    //Example: unmount drive F: .
    //Command: piso unmount F:
     $drive = inputselect("Unmount which drive?", L|M|N|O,,2,,650,250, "XYplorer PowerISO");
     end(strlen($drive) > 1), "Please select only one check box, script ends.";

   //run
      msg """$app"" unmount $drive:";


//============================================


"Un mount all !!!"
    $app = "C:\Program Files (x86)\PowerISO\PISO.exe";
    //Example: unmount all drives.
    //Command: piso unmount all

    //run
      msg """$app"" unmount all";

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 03:54
by kotlmg
i tried the code with msg and also with run. but it is not working.
the path for the program is
C:\Program Files (x86)\PowerISO\PowerISO.exe

the website for the program is http://www.poweriso.com/

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 08:35
by Stefan
>>"but it is not working."
What is not working. what do you do? how? what happens?


as you see in your examples the app for command line use is piso.exe
you should have that executable also

the msg command shows you an dialog with the command line to execute, only.
if that command line makes sense, you can use run instead of msg.
maybe we have to tweak the quoting.will take an look if i find some time.

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 10:48
by kotlmg
there is no piso.exe in the installation folder. so i have modified the code to PowerIso.exe. whenever mount, unmount drive or unmount all commands are executed from catalogue, only power iso window is getting popped up, neither mounting nor unmounting taking place.

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 11:12
by highend
there is no piso.exe in the installation folder
ScreenShot_02.jpg
Stefan's code works fine. I guess you didn't configure PowerISO properly (assign the correct drive letters to all virtual drives)...

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 12:48
by kotlmg
i have installed power iso in my office 32 bit win 7 sytem and it got installed in C:\Program Files\PowerISO\PowerIso.exe and it is having piso.exe also.
it has installed K,L.M and N drives.

Code: Select all

"Mount..."
    end(recase("<curext>", "lower") != "iso"), "No ISO file selected, script ends.";
    $app = "C:\Program Files\PowerISO\piso.exe";
    //mount <file name> <drive>: Mount image file to virtual drive.
    //Example: Mount d:\test.iso to drive F: .
    //Command: piso mount d:\test.iso F:

     $iso = quote("<curitem>");

    //inputselect(header, listdata, [separator=|], [style=1], [cancel], [width=600], [height=400], [windowcaption])
     $drive = inputselect("Mount as which drive?<crlf>$iso", K|L|M|N,,2,,650,250, "XYplorer PowerISO");
     end(strlen($drive) > 1), "Please select only one check box, script ends.";

     //run
       msg """$app"" mount $iso $drive:";

    //tab([operation], [data], [index])
       tab("new", $drive:);


//============================================


"Unmount..."
    $app = "C:\Program Files\PowerISO\piso.exe";
    //unmount <drive|all>: Unmount image file.
    //Example: unmount drive F: .
    //Command: piso unmount F:
     $drive = inputselect("Unmount which drive?", K|L|M|N,,2,,650,250, "XYplorer PowerISO");
     end(strlen($drive) > 1), "Please select only one check box, script ends.";

   //run
      msg """$app"" unmount $drive:";


//============================================


"Un mount all !!!"
    $app = "C:\Program Files\PowerISO\piso.exe";
    //Example: unmount all drives.
    //Command: piso unmount all

    //run
      msg """$app"" unmount all";

manual mounting and unmounting is working and
whenever i execute the above commands through script, i am getting the attached error.

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 13:51
by Stefan
kotlmg wrote: manual mounting and unmounting is working and
whenever i execute the above commands through script, i am getting the attached error.
Timing problem?
What if you wait an second... and refresh,....is then K: accessible?

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 14:29
by highend
replace the first "msg" command with "text"

execute the script, copy the whole text from the message box into a dos box and execute that line.

Screenshot of that output?

I guess you get a "... failed" message there.

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 14:56
by kotlmg
strage, after restarting the system again, your code started working perfectly. lot lot many thanks to you.
i have so many image files of different formats i.e. ISO, BIN, DAA, NRG, CDI etc.
i want the above code to execute all those file formats? the following line will work or not?
end(recase("<curext>", "lower") != "iso|bin|nrg|daa|cdi"), "No ISO file selected, script ends.";

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 16:33
by Stefan
kotlmg wrote:strage, after restarting the system again, your code started working perfectly.
Fine!
i have so many image files of different formats i.e. ISO, BIN, DAA, NRG, CDI etc.
i want the above code to execute all those file formats? the following line will work or not?
end(recase("<curext>", "lower") != "iso|bin|nrg|daa|cdi"), "No ISO file selected, script ends.";
No!


maybe try

Code: Select all

  end( strpos("iso|bin|nrg|daa|cdi", "<curext>") == -1 ), "No ISO file selected, script ends.";

Re: Mount iso files using winarchive

Posted: 13 Jan 2012 17:07
by kotlmg
yes, your code is working for all the selected file formats.

Thanks a TON for your great help.