Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Computing > Windows 64bit > Re: enumerating control pannel items from 32 bit executable on XP 64 bit and Vista 64 bit

Reply
Thread Tools

Re: enumerating control pannel items from 32 bit executable on XP 64 bit and Vista 64 bit

 
 
Homer J. Simpson
Guest
Posts: n/a
 
      01-18-2009
I'm not sure how realiable that would be, or if it would miss any item, but
couldn't you simply obtain a listing of all *.cpl files under
%windir%\system32 and %windir%\syswow64?

If you need user-friendly names to display to a user, you can probably use
the .cpl's FileVersionInfo structure like you can for any EXE/DLL.


 
Reply With Quote
 
 
 
 
Carlos
Guest
Posts: n/a
 
      01-18-2009
Homer,
32 bit processes, when doing a simple "dir *.cpl" on \system32 are fooled by
the OS and redirected to \syswow64.
The workaround I mention in my post allows skipping that restriction.
For example, my main shell for exploring is ZtreeWin.
It is a 32-bit app, it cannot launch 64-bit apps, but it can access both sys
folders thanks to that workaround.

Carlos

"Homer J. Simpson" wrote:

> I'm not sure how realiable that would be, or if it would miss any item, but
> couldn't you simply obtain a listing of all *.cpl files under
> %windir%\system32 and %windir%\syswow64?
>
> If you need user-friendly names to display to a user, you can probably use
> the .cpl's FileVersionInfo structure like you can for any EXE/DLL.
>
>
>

 
Reply With Quote
 
 
 
 
Charlie Russel - MVP
Guest
Posts: n/a
 
      01-18-2009
You're correct, Carlos. A 32-bit process will not see the "real" system32
folder, but will see the SysWOW64 folder as if it were system32.

--
Charlie.
http://msmvps.com/blogs/xperts64
http://mvp.support.microsoft.com/profile/charlie.russel

"Carlos" <> wrote in message
news:5892F66F-6BBE-4DE0-A609-...
> Homer,
> 32 bit processes, when doing a simple "dir *.cpl" on \system32 are fooled
> by
> the OS and redirected to \syswow64.
> The workaround I mention in my post allows skipping that restriction.
> For example, my main shell for exploring is ZtreeWin.
> It is a 32-bit app, it cannot launch 64-bit apps, but it can access both
> sys
> folders thanks to that workaround.
>
> Carlos
>
> "Homer J. Simpson" wrote:
>
>> I'm not sure how realiable that would be, or if it would miss any item,
>> but
>> couldn't you simply obtain a listing of all *.cpl files under
>> %windir%\system32 and %windir%\syswow64?
>>
>> If you need user-friendly names to display to a user, you can probably
>> use
>> the .cpl's FileVersionInfo structure like you can for any EXE/DLL.
>>
>>
>>


 
Reply With Quote
 
Homer J. Simpson
Guest
Posts: n/a
 
      01-18-2009
> Homer,
> 32 bit processes, when doing a simple "dir *.cpl" on \system32 are fooled
> by
> the OS and redirected to \syswow64.
> The workaround I mention in my post allows skipping that restriction.
> For example, my main shell for exploring is ZtreeWin.
> It is a 32-bit app, it cannot launch 64-bit apps, but it can access both
> sys
> folders thanks to that workaround.
>
> Carlos


Dang. You're absolutely right. I was just looking at the content of the
two folders I mentioned, but--obviously--I'm doing this via Explorer, which
is 64-bit. "Duh" on me.

But...using Wow64DisableWow64FsRedirection() *in conjunction* with
enumerating all *.cpl files--even from within a 32-bit process--should get
there. You only mentioned the API, but made no suggestion about what,
exactly, to use it with...hence I've merely suggested listing .cpl files.
Is that what you were implying?


 
Reply With Quote
 
Carlos
Guest
Posts: n/a
 
      01-18-2009
Homer,
As I said before, I am not "that" techie so I am only suggesting a way based
on what the developer of ZTreeWin told me to convice me about the feasibility
of what he was achieving with his 32-bit program.
I don't even know how to use thos API's!
Maybe the OP can take it from there.

Carlos

"Homer J. Simpson" wrote:

> > Homer,
> > 32 bit processes, when doing a simple "dir *.cpl" on \system32 are fooled
> > by
> > the OS and redirected to \syswow64.
> > The workaround I mention in my post allows skipping that restriction.
> > For example, my main shell for exploring is ZtreeWin.
> > It is a 32-bit app, it cannot launch 64-bit apps, but it can access both
> > sys
> > folders thanks to that workaround.
> >
> > Carlos

>
> Dang. You're absolutely right. I was just looking at the content of the
> two folders I mentioned, but--obviously--I'm doing this via Explorer, which
> is 64-bit. "Duh" on me.
>
> But...using Wow64DisableWow64FsRedirection() *in conjunction* with
> enumerating all *.cpl files--even from within a 32-bit process--should get
> there. You only mentioned the API, but made no suggestion about what,
> exactly, to use it with...hence I've merely suggested listing .cpl files.
> Is that what you were implying?
>
>
>

 
Reply With Quote
 
Jim Barry
Guest
Posts: n/a
 
      01-19-2009
sandi_ro wrote:
> It seems we need some help from inside MS. Any MVP there that can
> help in this area ? Maybe tere is some simple thing that we are
> missing.


32-bit programs running on 64-bit Windows are subject to registry redirection. In particular, [HKLM\Software] is redirected to [HKLM\Software\WOW6432node]. Control panel namespace extensions are registered under [HKLM\Software\Microsoft\Windows\CurrentVersion\Exp lorer\ControlPanel\NameSpace], which is why 32-bit programs don't see 64-bit control panel extensions. And there's no way around it because 64-bit control panels are implemented by 64-bit DLLs, which can't be loaded by 32-bit programs.

--
Jim Barry, Microsoft MVP
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
enumerating control pannel items from 32 bit executable on XP 64 bit and Vista 64 bit sandi_ro Windows 64bit 2 01-28-2009 04:26 AM
Re: enumerating control pannel items from 32 bit executable on XP 64 bit and Vista 64 bit Lanwench [MVP - Exchange] Windows 64bit 0 01-21-2009 03:03 PM
Re: enumerating control pannel items from 32 bit executable on XP 64 bit and Vista 64 bit David B. Windows 64bit 0 01-20-2009 02:00 PM
RE: enumerating control pannel items from 32 bit executable on XP 64 b Carlos Windows 64bit 0 01-16-2009 11:28 PM
accessibility in control pannel SA Computer Support 0 10-25-2003 08:05 PM



Advertisments