Topic: Subject: One more PE volumes remounting tool.  (Read 6581 times)

Subject: One more PE volumes remounting tool.
« on: April 02, 2013, 04:20:47 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Subject is rather popular and already some programs were
presented here. Nevertheless I hope that there is still a hole for my program, PARTORG.EXE.
Suppose you need to service somebody's else computer and need
to plug one or more USB hard drives with a necessary data.
You want that all partitions of internal hard disks and of
USB drives plugged were mounted to prescribed mount points
during WINxPE_SE boot from flash drive. PARTORG.EXE will do it
if a simple INI-file with assignment statements will be placed
into the root directory of your WINxPE_SE boot flash drive.


Link to download: https://skydrive.live.com/redir?resid=F2E599BAD2AF3A57!28532
02.04.2013  17:38  623 757 partorg.0.1f.zip, MD5: 7e85f1a2c7a18e9c5e7a17c5d0d7da33

ZIP-archive contains both 32 and 64 bits EXE-files, description document and
example INI-file.

Consized help-log follows:

partorg -h
Tue Apr 02 15:13:09.752 partorg.exe, version=0.1f started.
Purpose:
when running in PE environment program tries to mount volumes accordingly
with requests read from program INI-file.
INI-file may reside in a program home directory, X:\Windows\System32 or in
the root of volume which is used to boot PE, Y:\.
PE-environment is detected by ( %SystemDrive% == X ).
When running in a Windows environment program shows volumes information and
terminates.

Invocation:
partorg.exe [option1 [option2...optionN]]
options must be prefixed with any of "/-" characters

Options:
[? -h /h]          - show Help and terminate
q[uite]            - supress console output
n[olog]            - supress log-file output other then error messages
a[ppend]           - append to log-file, is usefull when re-run program
m[ount-on-y]=Label - mount volume Label at Y
query              - show live volumes configuration and terminate
                     h and query options can be combined
loglevel=n         - n = [|1|2|3|4]
                     0 - log only error messages
                     1 - log error messages and final configuration
                     2 - log error messages, initial and final configurations
                     3 - log error messages, initial, want and final configurations
                     4 - log error messages, initial, want and final configurations,
                         and all intermediate actions.
                     default value for loglevel=3

Ini file example:

--- skipped ---

Ini-file name and location.
Default INI-file name is PARTORG.INI. If a file with a name <SerialNumber>.ini
exist then it is used instead of PARTORG.INI. <SerialNumber> is a serial number of
hard disk 0. It is present in the log of the program.

When mount-on-y option is given than program attempts to mount volume with
a given label at Y and if mount succeed than than INI-file is searched
in Y:\ directory.

This algorithm of ini-file selection permits to service some computers
without re-building WIM-file.

--- skipped ---

Example of launching partorg.exe from WINPESHL.INI:
[LaunchApps]
partorg.exe /q /m=acronispe

Read more details in partorg.exe.description file.

Re: Subject: One more PE volumes remounting tool.
« Reply #1 on: April 02, 2013, 05:06:28 PM »

Atari800xl

  • Code Baker
  • Sr. Chef
  • ****
  • Date Registered: Feb 2013
  • Posts: 827
Thanks for sharing, looks like a professional tool!
I'm looking forward to testing this one...

First question: Why can't I use it (also) on a normal Windows environment? Could be useful sometimes (at least for me, I always have to reassign letters on my testsystem which has an IDE-HD and a SATA-HD, they're always reversed on first boot, and letters are wrong/not to my liking).
« Last Edit: April 02, 2013, 05:23:43 PM by Atari800xl »

Re: Subject: One more PE volumes remounting tool.
« Reply #2 on: April 02, 2013, 05:47:59 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Thanks for your interest, really there is already such an opportunity but without real reassignment: option /s[imulate] permits to read live configuration from the file PARTORG.LIVE from the home directory. You may place your real live data into an example PARTORG.LIVE and run partorg.exe and you will see how, in which order volumes will be mounted. As for the assignment code activation, I need to think somewhat how make it SAFE for the other users. The most simple way I see now is to use your computer unique id - that is disk 0 serial number. Then I'll implement for example a hidden option like /run-live-on=<serialNumber> which say to mounting / dismounting guards - it's ok, for this computer permit to run these functions. If this way is appropriate then I'll implement it.

Re: Subject: One more PE volumes remounting tool.
« Reply #3 on: April 02, 2013, 06:11:29 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
OK, new option: /pass4guards=<yourDisk 0 serial number> will permit running of mounting / dismounting functions in ANY environment. This is rather SAFE as only on the computer with a given disk 0 serial number this code will be executed in Windows environment. Tomorrow will update an archive - today is already too late in Russia, sorry.

Re: Subject: One more PE volumes remounting tool.
« Reply #4 on: April 02, 2013, 06:23:29 PM »

Atari800xl

  • Code Baker
  • Sr. Chef
  • ****
  • Date Registered: Feb 2013
  • Posts: 827
You're working fast!!  :grin:

I wanted to do a quick test in Win8PESE and Win7PESE, just starting partorg.exe from a commandline, but I got a sxs error. Am I doing something wrong?
Thanks...

Re: Subject: One more PE volumes remounting tool.
« Reply #5 on: April 02, 2013, 06:28:21 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Sorry, I haven't got what means SXS error, could you send me message text or part of the log file ?

Re: Subject: One more PE volumes remounting tool.
« Reply #6 on: April 02, 2013, 06:36:32 PM »

Atari800xl

  • Code Baker
  • Sr. Chef
  • ****
  • Date Registered: Feb 2013
  • Posts: 827
Sorry, it's a (localized) error, which translates to "A Windows Side-by-side error occurred". I'll do some more testing later, as you said, it's getting late...
Thanks for your quick replies.

Re: Subject: One more PE volumes remounting tool.
« Reply #7 on: April 02, 2013, 06:41:40 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Found and answer in Internet, necessary VC runtime dlls are absent in your PE environment... This I've missed, need somewhat time to digg: there seems to be two ways - 1st to rebuild my project excluding VC runtime functions and another one - to rebuild your WIM including necessary components. You see, with mine Win7PE_SE.64 PARTORG.EXE runs fine but I've included into the WIM practically ALL possible components, it is really big. Give me some time, sorry.

Re: Subject: One more PE volumes remounting tool.
« Reply #8 on: April 02, 2013, 06:58:36 PM »

Atari800xl

  • Code Baker
  • Sr. Chef
  • ****
  • Date Registered: Feb 2013
  • Posts: 827
Please don't apologize  :embarrassed:
I'm the one who needs to apologize. If I need to rebuild my PE's with VC runtimes, I will. (On the other hand, if you have a way to prevent them being needed, that would also be nice). But don't go through too much trouble just for me! (Only if it's also useful for others...)

Re: Subject: One more PE volumes remounting tool.
« Reply #9 on: April 02, 2013, 07:15:05 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Guess I'll create one more pair of EXEcs: 1st one pair ( 32bit, 64bit ) with a relatively small exec size for those who have VC-runtime in PE and other pair with 4-times greater size of EXEs for those who haven't include VC-runtime into PE.

Re: Subject: One more PE volumes remounting tool.
« Reply #10 on: April 03, 2013, 05:19:35 AM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
New archive, nd.0.1f.zip contains ( x64, x86 ) versions of PARTORG.EXE which not need VC runtime in PE environment. To destinguish from original these EXE has names PARTORGND. Thus you have an opportunity to continue testing of 0.1f and I'll start creating 0.1g with an opportunity to run reassignments in Windows environment.

Re: Subject: One more PE volumes remounting tool.
« Reply #11 on: April 03, 2013, 10:46:38 AM »

Atari800xl

  • Code Baker
  • Sr. Chef
  • ****
  • Date Registered: Feb 2013
  • Posts: 827
OK, the new partorgnd is running fine in my W8PESE. It doesn't reassign the letters (yet?):

Code: [Select]
partorgnd.exe

Wed Apr 03 12:44:03.423 partorgnd.exe, version=0.1f started.
                                           Initial volumes configuration
--------------- VolumeName ---------------------- ----- DeviceName ------- ---- Label -----  -- Letter & Flags --
\\?\Volume{2a448611-9c52-11e2-b088-806e6f6e6963}\ \Device\HarddiskVolume4  NIEUWVOLUME       C *** BOOT
\\?\Volume{2a448612-9c52-11e2-b088-806e6f6e6963}\ \Device\HarddiskVolume5  DRIVE_D           E
\\?\Volume{2a448603-9c52-11e2-b088-806e6f6e6963}\ \Device\CdRom0           \CDROM0           F
\\?\Volume{d9b257fc-684e-4dcb-ab79-03cfa2f6b750}\ \Device\Ramdisk{d9b257fc BOOT              X *** BOOT
\\?\Volume{2a448610-9c52-11e2-b088-806e6f6e6963}\ \Device\HarddiskVolume1  MAIN16GB          Y *** BOOT
Hard Disk 0 serial number = Y6POF99DS
Wed Apr 03 12:44:04.579 --- Want assignments from Y:\testPartorg\Y6POF99DS.ini ---
D DRIVE_D
Wed Apr 03 12:44:04.610 --- Synchronization of Live and Want data started ---
                                            Final volumes configuration
--------------- VolumeName ---------------------- ----- DeviceName ------- ---- Label -----  -- Letter & Flags --
\\?\Volume{2a448611-9c52-11e2-b088-806e6f6e6963}\ \Device\HarddiskVolume4  NIEUWVOLUME       C *** BOOT
\\?\Volume{2a448612-9c52-11e2-b088-806e6f6e6963}\ \Device\HarddiskVolume5  DRIVE_D           E
\\?\Volume{2a448603-9c52-11e2-b088-806e6f6e6963}\ \Device\CdRom0           \CDROM0           F
\\?\Volume{d9b257fc-684e-4dcb-ab79-03cfa2f6b750}\ \Device\Ramdisk{d9b257fc BOOT              X *** BOOT
\\?\Volume{2a448610-9c52-11e2-b088-806e6f6e6963}\ \Device\HarddiskVolume1  MAIN16GB          Y *** BOOT
Hard Disk 0 serial number = Y6POF99DS
Wed Apr 03 12:44:04.751 partorgnd.exe finished


Duration: 1.328 seconds.

Re: Subject: One more PE volumes remounting tool.
« Reply #12 on: April 03, 2013, 11:04:52 AM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Hello, yes, I've placed 0.1f version rebuilt with static MFC to run it under PE without VC runtime DLLs. Now I'm coding 0.1g which will permit re-assignments under the Window. Appeared necessary to implement SOME options, password-protected to make it SAFE. Password == SerialNumbe and it is necessary to confirm that user fully RECOGNIZE what he is going to do.
Will publish 0.1g after will finish testing and updating documet: a lot of changes appeared to be necessary.

Re: Subject: One more PE volumes remounting tool.
« Reply #13 on: April 03, 2013, 12:57:37 PM »

Atari800xl

  • Code Baker
  • Sr. Chef
  • ****
  • Date Registered: Feb 2013
  • Posts: 827
sysprg: Sorry, I thought that the version with the builtin VC runtime was supposed to work in PE already (that's why I wonder why the E: drive wasn't changed to D:). So now you're saying it doesn't? OK, I'll wait for your next versions. Take your time, this looks like a very useful tool, so no need to hurry!
 :thumbsup:
« Last Edit: April 03, 2013, 12:58:40 PM by Atari800xl »

Re: Subject: One more PE volumes remounting tool.
« Reply #14 on: April 03, 2013, 02:58:23 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
Well, version you've tested SHOULD have remount DRIVE_D on D:\. Strange that WANT ASSIGNMENTS are not present in the log, loglevel=4 should have put all the statements from INI-file into the log. Could you, please 1) place <serialNumber>.ini into the Y:\ and run partorg /m=MAIN16GB /loglevel=4  ? I have BIG troubles with my hardware and will disappear for some time,  now am working from reserved, USB Win8MINI system with a lack of functionality until restore my necessary partition on the hard drive. As soon as restore, I'll look againn.

Re: Subject: One more PE volumes remounting tool.
« Reply #15 on: April 05, 2013, 06:32:58 PM »

ChrisR

  • XPE Baker
  • Grand Chef
  • *****
  • Date Registered: Mar 2011
  • Posts: 3494
First of all, thank you for sharing this tools  :great:.
I'm sorry to see that you have sometimes trouble with MountPEmedia :embarrassed:.
I've never met and I do not manage to reproduce it.

partorg is interesting and the re-assignments under Windows would be a plus :thumbsup:
For the standard boot, it can be a replacement for those who prefer, MountPEmedia works in this case with a file flag CdUsb.y (by default).
but not a replacement For the ISO boot. The ISO is in this case mounted on the drive Y by using imdisk.

I tried partorg.exe /q /m=Win8PESE which worked well.
when you have time, there is a concern if one of the drives is encrypted with Bitlocker.

I  have not tried yet with <serialNumber>.ini, I tried with partorg.ini (working directory, on Y: root), partorg can not find it!

Good restoration I hope there is not too much damage ;)

:cheers:

Re: Subject: One more PE volumes remounting tool.
« Reply #16 on: April 10, 2013, 04:25:44 AM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
I'm sorry for a long silence, it appreared necessary redesign a big part of the code to enable remounting in Windows environment which is really a very DANGEROUS operation as it may results in a system crash when SystemDrive is remounted . Thus a lot of a new code were implemented to enable SAFITY which prevents any potentially dangerous reassignments: a) SystemDrive could never be reassigned; b) C-drive could be reassigned ( if not being SystemDrive ) only if new option, /ForceC=password was provided and a correct value of the password == Disk 0 Serial Number. /RunWindows=password option enables reassignments in Windows environment, again password value == Disk 0 serial number. c) Any reassignment in ANY environment is performed if and only if no one file is opened on the target volume. Coding is finished and I'm debugging it, hope to place new version till the end of the week. In the previous version there is a bug in 2-line IsFileExist function and it sometimes cannot recognize presence of INI-file. No-use to fix this bug in the previous code as I'm already 500-lines of C-code ahead.
Many thnx for the interest to the program.

Re: Subject: One more PE volumes remounting tool.
« Reply #17 on: April 16, 2013, 03:22:28 PM »

sysprg

  • Jr. Chef
  • **
  • Date Registered: Jan 2013
  • Posts: 16
New version of PARTORG.EXE, 0.2d is ready for testing. A lot of changes: remounting in Windows environment, one run in PE environment is always enough, no more any conflicts with HWPNP.EXE. Zip archive contains 4 versions of PARTORG.EXE: two, x86 and x64 for those who has MFC DLLs in PE and other pair linked with static MFC libraries - for those who has no MFC DLLs. Small document inside archive describes new features. Full document, this time rather short as no need to write about conflicts and errors, will be done in the nearest future.

 

Powered by EzPortal