https://bugs.winehq.org/show_bug.cgi?id=16697 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |DUPLICATE Status|NEW |RESOLVED CC| |focht(a)gmx.net Component|-unknown |programs Summary|HyperChem 8.0.x's licensing |HyperChem 8.0.x's licensing |system fails to properly |system fails to properly |generate a 'locking code,' |generate a 'locking code' |preventing program usage |(volume/fs serial for "c:" | |must be non-zero for | |license/machine id | |generator) --- Comment #7 from Anastasius Focht <focht(a)gmx.net> --- Hello folks, confirming, still present. Spoiler: It's bug 17823 --- snip --- $ pwd /home/focht/.wine/drive_c/Hyper80/Program $ WINEDEBUG=+seh,+relay wine ./chem.exe >>log.txt 2>&1 ... 002b:Call user32.MessageBoxA(00000000,007cd1a0 "No license was found for this application. Would you like to invoke the SentinelLM Express Activator in order to obtain a license?",007bb168 "Activate License",00000024) ret=007d513a ... 002b:Call KERNEL32.CreateProcessA(00000000,003eb160 "C:\\windows\\Rainbow Technologies\\Client Activator\\2.0\\English\\ACTIVATOR.EXE @\"C:\\users\\focht\\Temp\\CaActiva.rsp\"",00000000,00000000,00000001,00000000,00000000,003eb265 "C:\\Hyper80\\Program",0032f3b4,0032f3f8) ret=003e130e ... 002b:Ret KERNEL32.CreateProcessA() retval=00000001 ret=003e130e --- snip --- Content of the response file for the activator: --- snip --- -T:0 -D:-1 -E:-1 -M:-1 -C:"C:\Hyper80\Program\HC80-Standalone.rac" --- snip --- Keep a backup copy of the response file, it gets deleted on each run. Manually running the activator: --- snip --- $ pwd /home/focht/.wine/drive_c/windows/Rainbow Technologies/Client Activator/2.0/English $ WINEDEBUG=+seh,+relay,+snoop,+mountmgr,+ntdll,+server wine ./ACTIVATOR.EXE @CaActiva.rsp >>log.txt 2>&1 ... 0009:Call KERNEL32.LoadLibraryA(017b9398 "C:\\users\\focht\\Temp\\CAFILES\\lsapiw32.dll") ret=0040c9b3 ... 0009:Ret KERNEL32.LoadLibraryA() retval=01c80000 ret=0040c9b3 0009:Call KERNEL32.GetProcAddress(01c80000,00495399 "VLSinitialize") ret=0040d593 0009:Ret KERNEL32.GetProcAddress() retval=01d1031f ret=0040d593 0009:CALL LSAPIW32.VLSinitialize(<unknown, check return>) ret=0040d59b ... 0009:Call ws2_32.WSAStartup(00000101,0032f068) ret=01c9bd97 0009:Ret ws2_32.WSAStartup() retval=00000000 ret=01c9bd97 0009:RET LSAPIW32.VLSinitialize() retval=00000000 ret=0040d59b ... 0009:Call KERNEL32.GetProcAddress(01c80000,004953a7 "VLSerrorHandle") ret=0040d5c9 0009:Ret KERNEL32.GetProcAddress() retval=01d10143 ret=0040d5c9 0009:CALL LSAPIW32.VLSerrorHandle(<unknown, check return>) ret=0040d5d0 0009:RET LSAPIW32.VLSerrorHandle() retval=00000000 ret=0040d5d0 0009:Call KERNEL32.GetProcAddress(01c80000,004953c1 "VLSinitMachineID") ret=0040d635 0009:Ret KERNEL32.GetProcAddress() retval=01d102ec ret=0040d635 0009:CALL LSAPIW32.VLSinitMachineID(<unknown, check return>) ret=0040d63c 0009:RET LSAPIW32.VLSinitMachineID() retval=00000000 ret=0040d63c 0009:Call KERNEL32.GetProcAddress(01c80000,004953d2 "VLSgetMachineID") ret=0040d673 0009:Ret KERNEL32.GetProcAddress() retval=01d10220 ret=0040d673 0009:CALL LSAPIW32.VLSgetMachineID(00000004,0032f070,0032f190) ret=0040d67f ... 0009:Call KERNEL32.GetLogicalDriveStringsA(00000400,0032ec0c) ret=01c9b77d ... 0009:Ret KERNEL32.GetLogicalDriveStringsA() retval=0000000c ret=01c9b77d 0009:Call KERNEL32.GetDriveTypeA(0032ec0c "C:\\") ret=01c9b793 ... 0009:Ret KERNEL32.GetDriveTypeA() retval=00000003 ret=01c9b793 ... 0009:Call KERNEL32.GetVolumeInformationA(0032ec0c "C:\\",00000000,00000000,0032f00c,00000000,00000000,00000000,00000000) ret=01c9b7a9 ... 0009: get_handle_fd( handle=0088 ) 0009: get_handle_fd() = BAD_DEVICE_TYPE { type=0, cacheable=1, access=00000000, options=00000000 } ... 0009: ioctl( code=00024000, async={handle=0088,event=0000,iosb=0032d718,user=019d8a18,apc=00000000,apc_context=00000000}, in_data={} ) ... 0025:trace:mountmgr:harddisk_ioctl ioctl 24000 insize 0 outsize 804 ... 0009: select() = KERNEL_APC { call={APC_ASYNC_IO,user=019d8a18,sb=0032d718,status=INVALID_DEVICE_REQUEST}, apc_handle=0090, context={} } ... 0009:trace:ntdll:NtSetInformationFile (0x88,0x32d6b0,0x32d6a8,0x00000008,0x0000000e) ... 0009:Ret ntdll.NtSetInformationFile() retval=c00000cb ret=7b013e1a ... 0009:Call ntdll.NtSetInformationFile(00000088,0032ce80,0032ce78,00000008,0000000e) ret=7b013e1a 0009:trace:ntdll:NtSetInformationFile (0x88,0x32ce80,0x32ce78,0x00000008,0x0000000e) 0009:Ret ntdll.NtSetInformationFile() retval=c00000cb ret=7b013e1a 0009:Call ntdll.RtlNtStatusToDosError(c00000cb) ret=7b013e59 0009:Ret ntdll.RtlNtStatusToDosError() retval=00000042 ret=7b013e59 0009:trace:ntdll:FILE_CreateFile handle=0x32d700 access=80100000 name=L"\\??\\C:\\.windows-serial" objattr=00000040 root=(nil) sec=(nil) io=0x32d710 alloc_size=(nil) attr=00000000 sharing=00000003 disp=1 options=00000020 ea=(nil).0x00000000 0009:warn:ntdll:FILE_CreateFile L"\\??\\C:\\.windows-serial" not found (c0000034) ... 0009:Ret KERNEL32.GetVolumeInformationA() retval=00000001 ret=01c9b7a9 ... 0009:Call KERNEL32.GetDriveTypeA(0032ec10 "D:\\") ret=01c9b793 ... 0009:Ret KERNEL32.GetDriveTypeA() retval=00000005 ret=01c9b793 0009:Call KERNEL32.GetDriveTypeA(0032ec14 "Z:\\") ret=01c9b793 ... 0009:Ret KERNEL32.GetDriveTypeA() retval=00000003 ret=01c9b793 ... 0009:Call KERNEL32.GetVolumeInformationA(0032ec14 "Z:\\",00000000,00000000,0032f00c,00000000,00000000,00000000,00000000) ret=01c9b7a9 ... 0009: ioctl( code=00024000, async={handle=0088,event=0000,iosb=0032d718,user=019d8a18,apc=00000000,apc_context=00000000}, in_data={} ) 0009: ioctl() = NOT_SUPPORTED { wait=0000, options=00000060, out_data={} } 0009:fixme:ntdll:server_ioctl_file Unsupported ioctl 24000 (device=2 access=1 func=0 method=0) ... 0009:trace:ntdll:FILE_CreateFile handle=0x32d700 access=80100000 name=L"\\??\\Z:\\.windows-serial" objattr=00000040 root=(nil) sec=(nil) io=0x32d710 alloc_size=(nil) attr=00000000 sharing=00000003 disp=1 options=00000020 ea=(nil).0x00000000 0009:warn:ntdll:FILE_CreateFile L"\\??\\Z:\\.windows-serial" not found (c0000034) ... 0009:Ret KERNEL32.GetVolumeInformationA() retval=00000001 ret=01c9b7a9 0009:RET LSAPIW32.VLSgetMachineID() retval=00000000 ret=0040d67f 0009:Call KERNEL32.GetProcAddress(01c80000,004953e2 "VLSmachineIDtoLockCode") ret=0040d6bb 0009:Ret KERNEL32.GetProcAddress() retval=01d10363 ret=0040d6bb 0009:CALL LSAPIW32.VLSmachineIDtoLockCode(0032f070,00000000,0032f194) ret=0040d6c7 0009:RET LSAPIW32.VLSmachineIDtoLockCode() retval=00000000 ret=0040d6c7 ... --- snip --- The lock code is generated from the machine id which is derived from the volume serial of the first fixed drive found (usually 'C:'). You can test by yourself by setting it to non-zero value or using Wine-Staging. I will refine bug 17823 summary line to be more generic. It's already "staged" and a collector. $ sha1sum hyper8010.zip e3d3cad9b233180213b8ec838d090f6b87126e8e hyper8010.zip $ du -sh hyper8010.zip 179M hyper8010.zip $ wine --version wine-5.6-193-g59987bc9ec Regards *** This bug has been marked as a duplicate of bug 17823 *** -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.