Jump to content











Photo
- - - - -

Vista look in XP


  • Please log in to reply
60 replies to this topic

#26 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 16 February 2009 - 01:58 AM

Most shells that I have tried seem to find the default (common? allusers?) startmenu.

Here's the registry for WinPE 3.0:



Maybe those shells use an environment variable to locate the available keys under "User Shell Folders"; whereas Vi* tries to locate the registry key directly, and the keys are missing under "Shell Folders".

Regards

Little misunderstanding.
The orb is not a shell. It's meant as an addon to the explorershell. And though it can run stand alone, it has to work differently than a program meant as a standalone shell.
For instance, you can keep Explorer as shell and still use the Orb at the same time to replace the start button.
Try using explorer as shell and KDE added in. :poke:

Hence the Orb needs to act exactly like the explorer start button it replaces. No way around that!

But the Orb is not really your problem. If you use regshot to get all the needed reg entries from a ViStart install, it will also contain the keys the Orb needs to find it.
Getting everything ViStart needs, might be a bit more tricky.

So to be absolutely clear.
The Orb needs to work properly, eighter the explorer shell or ViStart, it does nothing but look pretty and and call the start menu specified somewhere in the registry (dll/exe).
ViStart may not need explorer as shell, but it sure needs the registry settings and folders and shortcuts from the explorer start menu.


:poke:

PS: Since the orb can also be run standalone, it would be real easy to use Regmon to track all the keys it's looking for.

#27 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 16 February 2009 - 02:36 AM

Yes. I understand that it's not a shell... tho it's close, and I think Lee has hinted at something 'bigger' to come.

What I was trying to say is that most off-the-shelf shells like litestep, xoblite, bbLean, emergeDesktop, etc are able to find the startmenu and everything in it - usually just a right-click on the desktop and there it is.

So, why can't ViStart?

It looked to me that the only reason was that ViStart was looking in the 'Shell Folders' registry key which is empty in PE, and should be looking in the 'User Shell Folders' key which is full... in both HKCU for user 'start menu', and HKLM for 'common start menu', etc

I've used .reg files to simply copy the 'User Shell Folders' to 'Shell Folders' and the errors have gone.

Now there is a problem finding a path to something unspecified... to do with ViStart. I'm guessing that it's something hard-coded as c:\... rather than %SystemDrive% (x:\).

Much thanks... :poke:

#28 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 16 February 2009 - 03:20 AM

What I was trying to say is that most off-the-shelf shells like litestep, xoblite, bbLean, emergeDesktop, etc are able to find the startmenu and everything in it - usually just a right-click on the desktop and there it is.

So, why can't ViStart?

Because is not a standalone program, Its an inplace replacement.
It replaces not the shell, the taslbar, the start button, the startmenu, the way shortcuts are handled and organized. It replaces JUST the start menu!
It keeps as much as possible original. For instance, it will not alter the sorting of the start menu even when you've draged things around before.

If there are any problems, i doubt it's because of a hardcoded drive letter. Missing registry entries and dll are a much more likely source.

I will have a look into the dependencies.

:poke:

#29 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 16 February 2009 - 03:49 AM

You need the vbrun60 files... that was the only dependency reported missing by the program... can't remember the actual filename.

Here is where I'm up to after copying all the registry entries from 'User Shell Folders' key to ''Shell Folders' key in both HKCU and HKLM hives.



No more registry errors. Then 'Path not found'.

There is a ViStart directory created by the program in the root of x: but empty. What do you think this is for? It looks lost to me.

Regards

#30 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 16 February 2009 - 02:03 PM

I can already tell you that ViStart works only when the deafult XP startmenu is selected.
So i guess it will also not work when there is nothing selected.

Will test Viorb and ViStart in NPE to check how far they depend on Explorer and acompanied dll.

:poke:

#31 Nuno Brito

Nuno Brito

    Platinum Member

  • .script developer
  • 10545 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 16 February 2009 - 03:27 PM

No word from the author about this matter? :poke:

#32 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 16 February 2009 - 04:02 PM

Guess allanf hasn't asked yet.

:poke:

#33 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 16 February 2009 - 04:30 PM

@allanf
Sorry i think all 3 programs are worthless for your project.
ViOrb runs standalone but uses now a hook to tie directly into the explorer.
ViStart and VisPlore both need ActiveX to work. Guess that's not available in WAIK.

I guess the only way to get this working in your project is to ask the author if he is interested to whip something up especialy for your project. Something that maybe ties into geoshell. ?

:poke:

#34 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 16 February 2009 - 09:19 PM

@allanf
Sorry i think all 3 programs are worthless for your project.
ViOrb runs standalone but uses now a hook to tie directly into the explorer.
ViStart and VisPlore both need ActiveX to work. Guess that's not available in WAIK.

I guess the only way to get this working in your project is to ask the author if he is interested to whip something up especialy for your project. Something that maybe ties into geoshell. ?

:poke:


I did start a thread in their forum, but no response from the author as yet.

Visplore works in pe21. It's unbelievable.

ViStart creates a Settings.xml file that looks like it contains some default startmenu entries linking to Documents, Pictures, Videos, etc. Unfortunately, I see the expression "program=explorer" all through the .xml, even when I set ViSplore as the default File Manager (before loading ViStart.) And I can't get around that 'Path Not Found' error mentioned earlier.

ViOrb doesn't work except right-click.

Regards

#35 Nuno Brito

Nuno Brito

    Platinum Member

  • .script developer
  • 10545 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 16 February 2009 - 09:39 PM

ViStart and VisPlore both need ActiveX to work. Guess that's not available in WAIK.


eheh... ActiveX can be added on WAIK to some extent.

Just enable support for HTA when building the WAIK from command line/PE21, import the settings for IE 7 / ActiveX and then copy over some of the needed DLL's. There are also a few other tools that can help debugging activeX or you can register them using regsvr32 while running PE for testing things up.

This mostly depends on the type of ActiveX functionality that you're needing. For some reason in Windows PE, the biggest trouble are probably the security permissions limiting the option to run activeX inside IE but I don't think this is really a bothersome for this case.

I didn't bothered scripting this functionality since I was only doing some tests but it can definitively be done if absolutely necessary to get this app running. I've also documented my testing progress and can repeat back those steps.

Let's have a nice looking PE.. :poke:

#36 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 16 February 2009 - 11:26 PM

Visplore works in pe21. It's unbelievable.

I have tried the set as default too, but i see no difference to not setting it. All links and shortcuts still start explorer even win+E. :poke:
When i run ViOrb and ViStart and then kill Explorer. The Orb stays visible but without function. :poke:

:poke:

#37 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 16 February 2009 - 11:44 PM

I attach another screenshot of ViSplore in Project pe21.003a in case you missed the previous. No errors in installing or starting ViSplore. Just set it as default (Rt-Click in SysTray), and it starts (in root of c:\). I do not have explorer.exe anywhere in pe21.003a, so it is necessary to set ViSplore as default - otherwise nothing when select 'Explore'.



The only problem is with ViStart - no dependencies reported as missing, The big hurdle at the moment is the 'Path Not Found' error which quits the installation. However it is partly installed - creates a directory under Program Folders (and one empty in SystemDrive root) which contains the .xml and .png files to create the new start menu. But it cannot pass the 'Path Not Found' error.

I have also tried the Vi* Products under WinPE 3.0 (Win7). A lot more work is required to get them working in that.

Regards

#38 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 12:10 AM

I attach another screenshot of ViSplore in Project pe21.003a in case you missed the previous. No errors in installing or starting ViSplore. Just set it as default (Rt-Click in SysTray), and it starts (in root of c:\). I do not have explorer.exe anywhere in pe21.003a, so it is necessary to set ViSplore as default - otherwise nothing when select 'Explore'.

So ActiveX is not a problem, good to hear!

The only problem is with ViStart - no dependencies reported as missing, The big hurdle at the moment is the 'Path Not Found' error which quits the installation. However it is partly installed - creates a directory under Program Folders (and one empty in SystemDrive root) which contains the .xml and .png files to create the new start menu. But it cannot pass the 'Path Not Found' error.

How did you check for dependencies?
Since the stupid VB library works as a layer between the app and the needed dll. You will need to use Dependency viewer with profiling to see anything.

Will try to have a second look at it.

:poke:

#39 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 17 February 2009 - 12:25 AM

The screenshot shows "Dependency Walker" icon in the taskTray. That's what I am using to profile ViStart. You can see ViStart's icon in the TaskTray as well, and ind the SysTray (partially obscured), but unfortunately those icons are there to signify the ViStart Error Message - "Path Not Found".

I cannot go any further until I know what path. If I knew, I could create the path myself - instead of debugging the program, I debug the environment. I created c:\ViStart thinking the program was mistakenly looking for something in c:\ as the SystemDrive, instead of the correct drive, x:\.

What else can I do?

BTW, the author, Lee has responded, but I don't know what to ask.

Regards

#40 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 12:41 AM

Seems you're way ahead of me! :poke:
To figure out what path ViStart is looking for. I would use FileMon from sysinternals. It will tell you each read - or write access, even the just attempted. If you filter for just the errors. It should be easier to see the problem.

:poke:

#41 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 17 February 2009 - 12:53 AM

I would use FileMon from sysinternals. It will tell you each read - or write access, even the just attempted. If you filter for just the errors. It should be easier to see the problem.


OK. I'll try the SysInternals Tools. FileMon was incoroprated into another tool (?) for PE 2.x. Might need some guidance tho. Last time I tried it, it was like an unstoppable avalanche of data until the whole system was full up. 'Filters' you say. OK

Thanks again!

#42 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 02:04 AM

Yes the filtering is a bit tricky to get exactly right, but i've read they improved on that in the new versions.

:poke:

PS: There's a VistaPE script around for all the sysinternal tools if i remember right. Might save you some time.

#43 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 17 February 2009 - 02:29 AM

PS: There's a VistaPE script around for all the sysinternal tools if i remember right. Might save you some time.


You don't mean this one?
http://www.boot-land...?...ost&p=24567

Still the best IMHO (..wonder if ti still works in VistaPE?) ... even creates a custom command prompt for all the sysinternals cmd tools plus links to all the hlp files!

It's been reproduced in pe21.003a with kind permission of the author. :poke:

The tool to use in pe2/3 is Process Monitor.

I can't see any glaring errors. A few 'name not founds' followed by success. One has me worried tho - a .../ViStart/resources/layout.xml 'name not found' and it doesn't exist at all.

I'm logged out of pe 2.1 ATM. Have you got any other pointers for when I get to it.

Thanks

#44 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 01:48 PM

Sorry, i really don't know which i meant. :poke:
There's always too much going on at Boot-Land for me to remember specifics. I always make just a mental note that something exists, so that i can look it up if i ever needed it.
But nice, that you get so good along with the author! :poke:

Reread some of your posts and it seems you're not having trouble running ViStart but installing it.
So i tracked an install for you and packed the installed files into an archive.

btw. I think, the missing path is this:%appdata%\ViStart

Attached File  ViStartPack.rar   350.85KB   194 downloads

The contents of the archive goes like this:
- the ViStart folder included in Programs goes to program files
- the ViStart folder included in Appdata goes to %Appdata%
- The text file is the tracked install - you can turn it into a reg file by deleting the non registry data. (Without the registry data ViStart won't start!)

Under normal circumstances, the contents of %appdata%\Vistart is generated new on every start.
The settings.xml will have to be adopted most likely, even for a test.

:poke:

PS: Don't forget to adopt the paths in the reg file!!!

#45 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 01:54 PM

BTW, the author, Lee has responded, but I don't know what to ask.

If you tell me how exactly you want to use ViOrb and ViStart in your project, i can probably help with that.

:poke:

#46 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 17 February 2009 - 03:27 PM

btw. I think, the missing path is this:%appdata%\ViStart
...
- the ViStart folder included in Appdata goes to %Appdata%
...
Under normal circumstances, the contents of %appdata%\Vistart is generated new on every start.
...
PS: Don't forget to adopt the paths in the reg file!!!


I was just about to go to bed. :poke: Thanks. :poke:

Where is %appdata% in Vista? There is no Environment Variable for it. It's in the registry as a 'Shell Folder' at '%UserProfile%\Appdata\Roaming', where %userProfile% is: 'x:\windows\system32\config\systemprofile' and I can see FreeCommander has put a folder there.

Should I SET a PATH? Will it persist? Has that been the problem all along - 'Path not Found' - and where should I set it to??

There ain't no 'C:\Dokumente und Einstellungen\Computer...\' even in English. :poke:

Best there is is 'X:\Users\Default\Appdata'.

Hope your feeling a bit fresher than me.

#47 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 03:48 PM

I was just about to go to bed. :poke: Thanks. :poke:

Where is %appdata% in Vista? There is no Environment Variable for it. It's in the registry as a 'Shell Folder' at '%UserProfile%\Appdata\Roaming', where %userProfile% is: 'x:\windows\system32\config\systemprofile' and I can see FreeCommander has put a folder there.

Should I SET a PATH? Will it persist? Has that been the problem all along - 'Path not Found' - and where should I set it to??

There ain't no 'C:\Dokumente und Einstellungen\Computer...\' even in English. :poke:

Best there is is 'X:\Users\Default\Appdata'.

Hope your feeling a bit fresher than me.

Yep a bit fresher, but on the downside no experience with Vista at least no in the degree needed here.
I have no idea if ViStart needs the variable %appdata% or get's it's info directly from the registry. I used it simply to describe where the folder should go. As you can see ViStart one step writes the complete path into the registry. So i guess that at least after the install, the variable is not used anymore.
When in doubt, put the folder right next to the FreeCommander one. The path sounds about right.

btw. By adopting the paths in the reg file, you should be able to put the folder anywhere you like.

---------------------------------------------------

To may solve the path problem try this:
- open a command prompt
- type: set appdata=WhatEverPathYouThinkIsRight
- then without closing the prompt, run ViStart_one_step.exe from inside the prompt (this will give the installer the variable, without messing up the system)

:)

#48 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 17 February 2009 - 04:09 PM

To may solve the path problem try this:
- open a command prompt
- type: set appdata=WhatEverPathYouThinkIsRight
- then without closing the prompt, run ViStart_one_step.exe from inside the prompt (this will give the installer the variable, without messing up the system)


Ok I set it to the same as registry value, kept the same cmd window, ran the installer and the ViStart folder was created there - empty - and same error. It lost the Variable I think before it could fill the folder. Getting somewhere because that lost x:\ViStart was not created.

When you say adopt the paths, you mean create those old XP paths, then set appdata to the same as XP? Maybe that won't persist either unless it's set in the registry.

This better be worth it. I think it will.

#49 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 17 February 2009 - 05:30 PM

Ok I set it to the same as registry value, kept the same cmd window, ran the installer and the ViStart folder was created there - empty - and same error. It lost the Variable I think before it could fill the folder. Getting somewhere because that lost x:\ViStart was not created.

The folder is filled while ViStart displays Loading. (Not during install, but in the start right afterwards.)

When you say adopt the paths, you mean create those old XP paths, then set appdata to the same as XP? Maybe that won't persist either unless it's set in the registry.

:poke: I meant it just the other way around, to change the registry paths to fit your folders. But both ways will work.

I still doubt that it will work since both ViOrb and ViStart use hooks to work. But what they wanna hook into, the Explorer shell does not exist.

Should be easy to turn ViOrb into a standalone application. After all it once was. :poke:
How much trouble it will be to turn ViStart into a standalone version, depends on which dll can be available in your PE and how much the author relied on Explorer/M$ functionality.
Getting it to work directly with the orb, on the other hand should be fairly simple.

What program do you wanna use as taskbar?


:poke:

#50 allanf

allanf

    Gold Member

  • .script developer
  • 1256 posts

Posted 17 February 2009 - 10:18 PM

Morning MedEvil,

It occured to me that the installer passes automatically to to ViStar.exe. Both installer and .exe end with the same error. I tried putting the populated ViStart folder form your .rar into the the %appdata% directory, setting the path and executing both - no go!

It's the .exe with the problem. Maybe, it's not only the %appdata% path - I'll try setting a few more of XP's PATHs.

Regards




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users