Jump to content

Rocket Dock Shortcut Issue With WinPE


CorruptHuman

Recommended Posts

Hello Everybody,

 

I am trying to create a WinPE bootable flash drive that uses rocket dock to store all my tools.

I was able to accomplish this  but when I boot to the flash drive on different machines the drive letter changes.

This corrupts my shortcuts to my tools on rocketdock.

If anyone here has advice i'm all ears.

Thank you in advance for your support in advance.

 

[EDIT]

 

http://stackoverflow.com/questions/60034/how-can-you-find-and-replace-text-in-a-file-using-the-windows-command-line-envir

 

I found this article which I believe may be beneficial.

I wIll try creating a find and replace script that will change the drive letter for my shortcuts in my Settings.ini file for Rocket Dock prior to lauching RocketDock.exe.

This or there my be the possibility of having startnet.cmd pass commands to  FART ("F ind A nd R eplace T ext" command line utility) to accomplish this.
 

[/EDIT]

 

Best Regards,

CorruptHuman

Edited by CorruptHuman
Link to comment
Share on other sites


Hallo CooruptHuman.

You need to know something that may help you in better reporting.

WinPE does NOT exist :w00t:

WinPE can be BOTH a "generic" term for a PE, or a "specific" term for a PE built using only MS tools.

 

Additionally when talking about a PE, it is advised to always specify the version, based on the source it was used to create it:

  1. XP/2003 -> PE 1.x
  2. Vista /2008 -> PE 2.x
  3. 7/2008R2 -> PE 3.x
  4. 8/2012-> PE 4.x
  5. 8.1/2012 R2->PE 5.x (though it should have been logically called 4.1)

http://technet.microsoft.com/en-us/library/dn293271.aspx

 

And specify the tool used to make it (like the original MS WAIK/AIK/ADK or any of the available third party tools) and (if used/relevant) the actual script/project used with the tool. 

 

Finally there are mainly two ways to make a PE bootable USB stick a "flat" file/folder structure (nowadays rarely used) or making use of an image (that can be a .iso, a RAW disk image, a .VHD or more commonly a .WIM image).

 

Usually it is possible to either "hardcode" a drive letter for a volume on the USB stick or set it when booting, but you will need to provide the above details in order to get a suitable (hopefully) solution to your issue.

 

jaclaz

Link to comment
Share on other sites

Hallo CooruptHuman.

You need to know something that may help you in better reporting.

WinPE does NOT exist :w00t:

WinPE can be BOTH a "generic" term for a PE, or a "specific" term for a PE built using only MS tools.

 

Additionally when talking about a PE, it is advised to always specify the version, based on the source it was used to create it:

  1. XP/2003 -> PE 1.x
  2. Vista /2008 -> PE 2.x
  3. 7/2008R2 -> PE 3.x
  4. 8/2012-> PE 4.x
  5. 8.1/2012 R2->PE 5.x (though it should have been logically called 4.1)

http://technet.microsoft.com/en-us/library/dn293271.aspx

 

And specify the tool used to make it (like the original MS WAIK/AIK/ADK or any of the available third party tools) and (if used/relevant) the actual script/project used with the tool. 

 

Finally there are mainly two ways to make a PE bootable USB stick a "flat" file/folder structure (nowadays rarely used) or making use of an image (that can be a .iso, a RAW disk image, a .VHD or more commonly a .WIM image).

 

Usually it is possible to either "hardcode" a drive letter for a volume on the USB stick or set it when booting, but you will need to provide the above details in order to get a suitable (hopefully) solution to your issue.

 

jaclaz

 

Thank you for the explanation of what the term WindowsPE actually means.

I will have to research what you said to further understand what you meant by "WinPE can be BOTH a "generic" term for a PE, or a "specific" term for a PE built using only MS tools.". 

 

It appears I used WAIK for the Windows 7 Environment.

http://www.microsoft.com/en-us/download/details.aspx?id=5753

 

If I understand correctly I used PE ver 3.x.

 

My project is to create a rescue tool.

 

The method I am using is the most common method of using the boot.wim file.

 

Instead of having to run my tools from the terminal I wanted to have a GUI to create ease of access to my tools.

 

At first I used PStart and it worked flawlessly in displaying all my tools from one window.

 

The GUI wasn't aesthetically pleasing though.....

 

I know beggars can't be choose but if there is a will there is a way.

 

I have the will to learn so I feel this will end in success.

 

On a side not I tried editing the path to where my tools are by using the %pdrive% variable.

Something like %pdrive%\RocketDock\Tools\NameofTool

 

This gave me an error.

 

As i try more I will post results.

Edited by CorruptHuman
Link to comment
Share on other sites

Good. :)

 

To clear your doubt, there are people that call WinPE *any* PE or Pre-installation Envirtonment created from a Windows source, whilst other (IMHO more correctly) call WinPE only the ones obtained by Microsoft or created only with thools/methods provided by MS.

As an example, a BartPE (i.e. a PE built using Bart's PEbuilder) is IMHO *generically* "a" PE and not a "WinPE".

As well as all the various projects created through Winbuilder are PE's but not WinPE's.

 

So you have a "normal" Win PE 3.x built from WAIK (actually AIK - the good MS guys have a special attitude to change names to things ). :yes: 

 

How did you prepare the USB stick?

In a PE usually you have more than one drive letter when it boots, which one do you have on the machine you built and where the PE works "right"?

Like (example):

Internal disk C:, D., E:

CD/DVD ROM: F:

USB Stick: K:

etc.

What happens instead on the machine(s) where those changed?

 

As a side note (and NOT what you asked :ph34r:, mind you) the actual "issue" that you tried to solve by using RocketDock was the lack of a graphical shell in your build (as a WinPE created from WAIK normally has CMD.EXE as shell).

You might want to try another build through a third party builder that includes a graphical shell.

This is a rather recent, simple and rather well documented project:

http://mistype.reboot.pro/mistype.docs/readme.html

http://reboot.pro/files/file/357-mistype/

http://reboot.pro/topic/18917-mistype/

that uses BBLean as a graphical shell.

 

jaclaz

Link to comment
Share on other sites

Good. :)

 

To clear your doubt, there are people that call WinPE *any* PE or Pre-installation Envirtonment created from a Windows source, whilst other (IMHO more correctly) call WinPE only the ones obtained by Microsoft or created only with thools/methods provided by MS.

As an example, a BartPE (i.e. a PE built using Bart's PEbuilder) is IMHO *generically* "a" PE and not a "WinPE".

As well as all the various projects created through Winbuilder are PE's but not WinPE's.

 

So you have a "normal" Win PE 3.x built from WAIK (actually AIK - the good MS guys have a special attitude to change names to things ). :yes:

 

How did you prepare the USB stick?

In a PE usually you have more than one drive letter when it boots, which one do you have on the machine you built and where the PE works "right"?

Like (example):

Internal disk C:, D., E:

CD/DVD ROM: F:

USB Stick: K:

etc.

What happens instead on the machine(s) where those changed?

 

As a side note (and NOT what you asked :ph34r:, mind you) the actual "issue" that you tried to solve by using RocketDock was the lack of a graphical shell in your build (as a WinPE created from WAIK normally has CMD.EXE as shell).

You might want to try another build through a third party builder that includes a graphical shell.

This is a rather recent, simple and rather well documented project:

http://mistype.reboot.pro/mistype.docs/readme.html

http://reboot.pro/files/file/357-mistype/

http://reboot.pro/topic/18917-mistype/

that uses BBLean as a graphical shell.

 

jaclaz

 

Primary SSD: C:

FlashDrive: G:

CD-ROM 0: D:

CD-ROM 1: F:

 

On my test laptop the icons show up correctly because the test laptop recognizes my flash drive as E:

I am guessing because I mapped all the paths while I was on this machine..

On my wifes laptop the icons all turned to question marks and gave an application not found error when I clicked them.

This is because it was still trying to reach out to E:\RocketDock\Tools\(name of application).*

 

I am still in the process of thinking of a way to make this work.

 

My idea is to have a small GUI to launch my tools from, along with the ability to drag and drop new tools into the tools folder without mounting the boot.wim file everytime.

[LaunchApps]"%programfiles%\setres\setres.exe h1024 v768 b32"%SYSTEMROOT%\system32\startnet.cmd

The above is what my WinPEShl.ini executes upon booting.

The program setres.exe just changes the resolution from its native resolution to 1024x768 with a 32-bit color scheme.

for %%p in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%p:\RocketDock\RocketDock.exe set w=%%p%w%:\RocketDock\RocketDock.exe

The above I use in my StartNet.cmd to have RocketDock launch automatically.

 

 

When I used the program pstart I didn't have this issue because the program didn't read from the beginning of the path starting at the drive letter.

Pstart looked in its current directory only, which was extremly convenient but the gui looked terrible and I wanted something a little more appealing.

 

Thank you again for all your help!

Link to comment
Share on other sites

for %%p in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%p:\RocketDock\RocketDock.exe set w=%%p

%w%:\RocketDock\RocketDock.exe

 

 Hmmm.

There is a known issue with PC's that have one of those "readers" (SD/CF cards, etc.).

See a few posts starting from here:

http://www.msfn.org/board/topic/137714-install-xp-from-a-ram-loaded-iso-image/?p=895119

 

But, as first instance, I would test something that actually outputs the found path, this way you can see if that is right (or if there is *something* else - like in the Registry or in a .ini/settings file that is "hardcoded" to E:\ ) 

If I remember correctly it saves it settings in a file "Settings.ini" in the tool folder :unsure:

for %%p in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%p:\RocketDock\RocketDock.exe DO (set w=%%pECHO Hi, I found drive letter %%p:ECHO I'm going to start  %%p:\RocketDock\RocketDock.exePAUSE%%p:\RocketDock\RocketDock.exe)

jaclaz

Link to comment
Share on other sites

New post (just to let CorruptHuman know I have changed something).

 

I have checked, the drive letter is hardcoded in Settings.ini.

The good news is that "relative" paths are seemingly accepted.

 

I.e. I quickly added it's own License.rtf and had this in Settings.ini:

 

5-FileName=C:\appoggio\Rocketdock\License.rtf?14
5-FileName2=
5-Title=License.rtf
5-Command=C:\appoggio\Rocketdock\License.rtf
5-Arguments=
5-WorkingDirectory=C:\appoggio\Rocketdock
5-ShowCmd=0
5-OpenRunning=0
5-IsSeparator=0
5-UseContext=0
5-DockletFile=

 

Simply converting it to:

 

5-FileName=..\..\..\appoggio\Rocketdock\License.rtf?14
5-FileName2=
5-Title=License.rtf
5-Command=..\..\..\appoggio\Rocketdock\License.rtf
5-Arguments=
5-WorkingDirectory=..\..\..\appoggio\Rocketdock
5-ShowCmd=0
5-OpenRunning=0
5-IsSeparator=0
5-UseContext=0
5-DockletFile=

 

 

Seems like working fine (but you will have anyway to test in your setup).

 

jaclaz

Link to comment
Share on other sites

New post (just to let CorruptHuman know I have changed something).

 

I have checked, the drive letter is hardcoded in Settings.ini.

The good news is that "relative" paths are seemingly accepted.

 

I.e. I quickly added it's own License.rtf and had this in Settings.ini:

 

5-FileName=C:\appoggio\Rocketdock\License.rtf?14

5-FileName2=

5-Title=License.rtf

5-Command=C:\appoggio\Rocketdock\License.rtf

5-Arguments=

5-WorkingDirectory=C:\appoggio\Rocketdock

5-ShowCmd=0

5-OpenRunning=0

5-IsSeparator=0

5-UseContext=0

5-DockletFile=

 

Simply converting it to:

 

5-FileName=..\..\..\appoggio\Rocketdock\License.rtf?14

5-FileName2=

5-Title=License.rtf

5-Command=..\..\..\appoggio\Rocketdock\License.rtf

5-Arguments=

5-WorkingDirectory=..\..\..\appoggio\Rocketdock

5-ShowCmd=0

5-OpenRunning=0

5-IsSeparator=0

5-UseContext=0

5-DockletFile=

 

 

Seems like working fine (but you will have anyway to test in your setup).

 

jaclaz

 

 

I tried relative paths prior to this and it didn't work.

If I recall correctly I had ..\..\RocketDock

Thank you for your help.

The problem is now fixed.

Using relative paths worked, but only when used correctly.

If needed thread can be closed.

Link to comment
Share on other sites

 

I don't mean to make a useless post in this thread but I needed to say that made my day. :lol:

 

I am glad to say I now have a better understanding of WinPE 3.x and what makes it a WinPE or another form of a PE.

You also gave me more material to research and understand.

 

Thank you for that.

 

I have a few more tweaks I will be making to the PE I am creating.

No worries though, I will be sure to lurk around the forums and make heavy use of google before creating a thread.

 

Thanks again!

Edited by CorruptHuman
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...