[Bug 1134] New: - endian problem (?) in registry loader

wine-bugs at winehq.com wine-bugs at winehq.com
Fri Nov 8 03:13:33 CST 2002


http://bugs.winehq.com/show_bug.cgi?id=1134

           Summary: endian problem (?) in registry loader
           Product: Wine
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: major
          Priority: P1
         Component: wine-misc
        AssignedTo: wine-bugs at winehq.com
        ReportedBy: whiting at mit.edu


running wine 20021031 with an installed copy of Windows ME, I tried to start MS
Word. It complained that it was not installed. I compared the wine system.reg
and the registry dump from regedit.exe and found the following difference:

Windows Registry:
[HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\Applications\WINWORD.EXE\shell\edit\command]
@="\"C:\\Program Files\\Microsoft Office\\Office\\WINWORD.EXE\" /n"
"command"=hex(7):4c,6a,4e,25,21,67,78,73,66,28,4e,67,5d,71,46,60,48,7b,4c,73,\
  57,4f,52,44,46,69,6c,65,73,3e,6c,6c,54,5d,6a,49,7b,6a,66,28,3d,31,26,4c,5b,\
  2d,38,31,2d,5d,20,2f,6e,00,00

~/.wine/system.reg:
[Software\\CLASSES\\Applications\\WINWORD.EXE\\shell\\edit\\command] 1036529854
@="\"C:\\Program Files\\Microsoft Office\\Office\\WINWORD.EXE\" /n"
"command"=str(7):"LjN%!gxsf(Ng]qF`H{LsWORDFiles>llT]jI{jf(=1&L[-81-] /n\0"

Replacing the "command"= line in ~/.wine/system.reg with the one from the
Windows registry fixed the problem. Looking at an ASCII table, I realized that
the string was the same byte values, except the byte order was swapped.

Changing the byte order to
[Software\\CLASSES\\Applications\\WINWORD.EXE\\shell\\edit\\command] 1036745211
@="\"C:\\Program Files\\Microsoft Office\\Office\\WINWORD.EXE\" /n"
"command"=str(7):"jL%Ng!sx(fgNq]`F{HsLOWDRiFel>sll}TIjj{(f1=L&-[18]-/ n\0"

fixed the problem. MS Word started, loaded a file and saved it with no problem.
This is probably a general problem with all registry values that load to str(7).
I saw it in several other str(7) values in the system.reg file.

Should be easy to fix, but I don't know anything about Wine's architecture, so I
don't even know where to begin looking for the function that reads in the
Windows registry.

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://bugs.winehq.com/show_bug.cgi?id=1134>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.



More information about the wine-bugs mailing list