Noobie error - disastrous results on 64-bits

Convert your BATch files into EXEcutable format in one click.
xkiter
Posts: 8
Joined: Sat Jun 06, 2009 4:22 pm

Noobie error - disastrous results on 64-bits

Post by xkiter »

I must altert everyone using QBF that the following problem (either BUG or lack of 64 bits version) can give some disastrous results. Its clear that the stuburness of Abyssmedia not to launch a 64 bit version is the responsible for this problem:

On a 64 bit Win7 OS launch a test.cmd with thefollowing code:

Code: Select all

IF EXISTS %windir%\System32\vds.exe (echo OK) else (echo notOK)
Given that vds.exe is a 64 bit program that exists in that directory, you'll get an "OK" as answer.

Now compile the file w/ QBF and run it... and you get the oposite answer!! Amizing and a BIG problem for critical scripts...

This only happens w/ files within the system32 and below folders...
Last edited by xkiter on Mon Dec 07, 2009 2:08 am, edited 1 time in total.
support
Site Admin
Posts: 476
Joined: Fri Feb 13, 2004 1:05 pm

Post by support »

This is not a bug. %WINDIR% variables for Win32 and Win64 applications will be different.
xkiter
Posts: 8
Joined: Sat Jun 06, 2009 4:22 pm

Post by xkiter »

It is a BUG... just test the following in Win7 64 bis, compiled and NOT compiled:

dir c:\windows\system32\vd*.*

On a command window one gets 7 files, 2 .exe and 5 .dll (7 File(s)- 1.686.528 bytes)

Through a compiled script we get 4 files (4 File(s) - 770.560 bytes)!!! Only the .dll appear in the dir command... absolutely amazing!

Just try out of yourself.... this is too serious to report as a BUG... its a major problem... I'm testing in several Win7 64 bit machines.

Some of the .exe appear in both not compiled and compiled (like the notepad.exe). In case they don't appear, there's no way one can access those files from within the QBF...

I'm testing, under admin, the following:
dir \Windows\System32\Recovery\
Command: I get 2 files, one .xml and one .wim
Compiled: I get 1 file!!! Only .xml as result of the same directive.
xkiter
Posts: 8
Joined: Sat Jun 06, 2009 4:22 pm

Post by xkiter »

Shame on me! Results of being noobie... (although the need for bit to run on WinPE 64 still pretty urgnt).

Windows 64 replaces automatically the access of some files to %windir%\SysWoW64

In order to access all the files in %windir%\System32 from a compiled script on a Wndows 64 machine, one needs to access %windir%\Sysnative.

My apologies for raising such a basic question.