SystemWow64 - Delphi

This is a discussion on SystemWow64 - Delphi ; Hello! Anybody here knows how to get the path to SystemWow64 directory? Is there any way to "force" an application to use SystemWow64 as the system directory instead of System32? Of course I'm talking about the 64bit Windows flavours here. ...

+ Reply to Thread
Results 1 to 5 of 5

SystemWow64

  1. Default SystemWow64

    Hello!

    Anybody here knows how to get the path to SystemWow64 directory?

    Is there any way to "force" an application to use SystemWow64 as the system
    directory instead of System32?

    Of course I'm talking about the 64bit Windows flavours here.

    Regards



  2. Default Re: SystemWow64


    "Willy S" <willisheham23@yahoo.com> wrote in message
    news:47d9a1ef@newsgroups.borland.com...

    > Is there any way to "force" an application to use SystemWow64 as the
    > system directory instead of System32?



    A better question: how does the system chose from which system directory it
    run some functions. I am testing a service I wrote on Vista 64.

    Using Sysinternals listdlls I see that some functions are taken from
    C:\Windows\System32 and some others from c:\Windows\SystemWow64

    It seems randomly to me. It would be fine and dandy if not because I'm using
    vssapi.dll. On Vista 64 is stated that 32bit applications MUST use the
    SystemWow64 dll. The system is chosen the one on System32, though...



  3. Default Re: SystemWow64


    "Willy S" <willisheham23@yahoo.com> wrote in message
    news:47d9a1ef@newsgroups.borland.com...

    > Anybody here knows how to get the path to SystemWow64 directory?


    GetSystemWow64Directory()
    http://msdn2.microsoft.com/en-us/library/ms724405.aspx

    > Is there any way to "force" an application to use SystemWow64
    > as the system directory instead of System32?


    32-bit applications already do that by default. You do not need to do
    anything extra for that. This is clearly stated in WOW64's documentation.

    If a 32-bit app wants to access the native System32 directory, it has to
    call Wow64DisableWow64FsRedirection() beforehand.


    Gambit



  4. Default Re: SystemWow64


    "Willy S" <willisheham23@yahoo.com> wrote in message
    news:47d9a599$1@newsgroups.borland.com...

    > A better question: how does the system chose from which system directory
    > it run some functions.


    By default, all 32-bit processes are redirected to the SystemWow64 folder
    when they try to access the System32 folder.

    > Using Sysinternals listdlls I see that some functions are taken from
    > C:\Windows\System32 and some others from c:\Windows\SystemWow64


    Such as?

    > It seems randomly to me.


    There is nothing random about Wow64. Its behavior is documented in detail
    at MSDN.


    Gambit



  5. Default Re: SystemWow64


    "Remy Lebeau (TeamB)" <no.spam@no.spam.com> wrote in message
    news:47da07e4@newsgroups.borland.com...
    >
    >
    > Gambit



    Found the problem. I am using vssapi.dll located normally on System32

    on XP64 the system redirects it to SystemWOW64 as it should be but not on
    Vista64 when it keeps using System32.

    in MS vss documentation is started that 32bit programs cannot call vss when
    running on WOW64, so I guess the system is smatrt enough to know that vss is
    an expception.

    So I guess, this is is. On Vista64 VSS must be called natively (with a 64
    bit application) and Delphi doesn't do that. Tried Lazarus and FreePascal
    whic can compile 64bit programs but there are a lot of declarations missing
    there and it's not worth all the work, cause I have Visual Studio installed
    here. ;-)



+ Reply to Thread