Modify

Opened 17 years ago

Closed 17 years ago

Last modified 17 years ago

#991 closed Bug (No Bug)

64 bit Rgistry Bug with New Scite and Autoit Mismatch

Reported by: anonymous Owned by: Jos
Milestone: Component: SciTE4AutoIt
Version: 3.3.0.0 Severity: None
Keywords: Cc:

Description

This happens in the May 21 build of Scite When trying to access 32 bit apps

This Registry information works when running inside of Scite but not once compiled by autoit

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

This registry information works when compiled with Autoit but not running inside of Scite

HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall

Attachments (1)

keys.zip (751 bytes ) - added by anonymous 17 years ago.
reg keys to run script against so external apps are not needed

Download all attachments as: .zip

Change History (9)

comment:1 by Valik, 17 years ago

Resolution: No Bug
Status: newclosed

You need to look at WikiStart and probably go visit the forum. It's a long way from clear as to what you are talking about.

by anonymous, 17 years ago

Attachment: keys.zip added

reg keys to run script against so external apps are not needed

comment:2 by sbrown@…, 17 years ago

Enter the attached reg keys to your registry then run the following script in Scite and then compile it and run it. My testing confirms what this poster is saying
Test2 fails in Scite, test3 fails once compiled
This may be an Autoit bug either way Scite and Autoit need to be in sync. Personally I do not like the HKLM64 method as it is a ghost key that does not really exist.

$var = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\CCleaner","DisplayName")
MsgBox(64,"Test",$var)

$var2 = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\CCleaner","DisplayName")
MsgBox(64,"Test2",$var2)

;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinRAR archiver

$var3 = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinRAR archiver","DisplayName")
MsgBox(64,"Test3",$var3)

$var4 = RegRead("HKEY_LOCAL_MACHINE64\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinRAR archiver","DisplayName")
MsgBox(64,"Test4",$var4)

;If you install the 64 bit version of winrar www.rarsoft.com and the 32 bit version of ccleaner www.ccleaner.com on a 64 bit machine

;Test2 fails in Scite test3 fails once compiled

comment:3 by Valik, 17 years ago

Resolution: No Bug
Status: closedreopened

Creating a new ticket to report the exact same reported here is very rude. I have deleted the new ticket.

To anybody who thinks they are reproducing this issue, do a very simple test:

MsgBox(4096, "", "Compiled: " & @Compiled & @CRLF & "x64: " & @AutoItX64)

Run that script from SciTE and tell us the results. Run that script compiled and tell us the results.

comment:4 by anonymous, 17 years ago

Sorry I could not reopen it. I did not mean to be rude I was not sure I had the right dept.

From Scite
Compiled: 0
x64: 1
From autoit
Compiled: 1
x64: 0

comment:5 by Valik, 17 years ago

Resolution: No Bug
Status: reopenedclosed

Exactly as I expected. When you run through SciTE it is using the 64-bit version. When you compile it's using the 64-bit version because you must explicitly choose to compile using the 64-bit version.

Now, as for the registry keys. If you look for a 64-bit key with a 32-bit program you must explicitly specify the 64-bit path. The same holds true when trying to access a 32-bit key from a 64-bit program. Windows employs registry redirection which you need to read up on and understand.

As expected, this is not a bug.

comment:6 by anonymous, 17 years ago

I don't see a way to specify that Scite uses the 32 bit version of autoit to run my au3 files. I am writing a program to be used universally on 32 bit and 64 bit OS type

comment:7 by Jos, 17 years ago

When you are using the full SciTE4AutoIt3 packages, you can use the directive to set it, but I expect that AutoIt3Wrapper will automatically detect its a x64 environment en defaults to aut2exe_x64.exe.
Show the total SciTE output pnae information to be able to determine what you are exactly doing.

Jos

comment:8 by anonymous, 17 years ago

I found out you can fix this bt reinstalling Autoit and do not select "Run 64X components when possible.

Modify Ticket

Action
as closed The owner will remain Jos.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.