I'm trying to do something with registry, made script to add some values to HKLM\Drivers\BuiltIn\GPS like:
RegWriteString("HKLM", "Drivers\BuiltIn\GPS", "Prefix", "COM")
RegWriteString("HKLM", "Drivers\BuiltIn\GPS", "ParamFolder", "data")
RegWriteString("HKLM", "Drivers\BuiltIn\GPS", "Dll", "GPS.Dll")
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "Index", 7)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "Order", 2)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel0", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel1", 0)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel2", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel3", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel4", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel5", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel6", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "NmeaSel7", 0)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "FrozenLat", 0)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "FrozenLon", 0)
RegWriteString("HKLM", "Drivers\BuiltIn\GPS", "TcxoXoPpmSetting", "0.5")
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "BackgroundLogDataEnable", 0)
RegWriteString("HKLM", "Drivers\BuiltIn\GPS", "BackgroundLogFolder", "SDMMC")
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "CurGpsWeekRollerNum", 1)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "DefaultGpsWeekNo", 469)
RegWriteDWord("HKLM", "Drivers\BuiltIn\GPS", "CCMFlag", 0)
RegWriteString("HKLM", "Drivers\BuiltIn\GPS", "IClass", "{A32942B7-920C-486b-B0E6-92A702A99B35}")
Comparing with other gps there is no IClass and other values, but after adding, I still cant get gps working..
I don't know if the changes are working without reboot, but we can't reboot - reseting registry..
I don't know what exactly parameters would be correct, also we have gps related entries here:
[HKEY_LOCAL_MACHINE\Drivers\Launch\GPS]
"Prefix"="COM"
"Dll"="GPS.Dll"
"Index"=dword:00000007
"Order"=dword:00000002
There is GPS.dll and GpsTmc.dll in rom \windows\, maybe easy method with replacing GpsTmc in iGO with GpsTmc from rom would work?
Havent tried that, but even if yes - then its not good solution, we have to get gps work in all the apps!
Maybe we should point it out to other GPS.dll than that in rom? Via change value in "Dll" entry? Ahh..
I've also made some scripts to add missing registry entrante related to shell/explorer etc.:
RegWriteString("HKLM", "Explorer\RunHistory", "", "")
RegWriteString("HKLM", "Services\NOTIFY", "Dll", "NOTIFY.Dll")
RegWriteString("HKLM", "Services\NOTIFY", "Prefix", "NFY")
RegWriteDWord("HKLM", "Services\NOTIFY", "Index", 0)
RegWriteDWord("HKLM", "Services\NOTIFY", "Keep", 1)
RegWriteDWord("HKLM", "Services\NOTIFY", "Order", 0)
RegWriteString("HKLM", "System\Events", "system/events/notify/APIReady", "Notifications API set ready")
RegWriteString("HKLM", "System\Events", "SYSTEM/GweApiSetReady", "Event triggered after GWES registers its API sets")
RegWriteString("HKLM", "System\Events", "SYSTEM/ShellAPIReady", "Shell APIs")
And after that copy some explorer.exe, dlls, but still cant get fully working - window instantly disappears after run.
It looks like there is lack of some resources/libraries/registry, or maybe some process instantly kill new windows/processes.
Applications which are not running are concerned in some notifications/popup windows - all of them not work.
Even MortScript is not fully working - I cant make 'message' script, or 'Choice' menu script. Limited funcionality.
Tried few versions of explorer.exe, still no luck.
I've also tried to point some other ceshell.dll, if we couldn't overwrite it in \windows\ directory, registry like:
RegWriteString("HKCR", "CLSID\{00021400-0000-0000-C000-000000000046}\InprocServer32", "", "\SDMMC\WinCE\ceshell.dll")
RegWriteString("HKCR", "CLSID\{000214A0-0000-0000-C000-000000000046}", "DefaultIcon", "\SDMMC\WinCE\ceshell.dll,-4354")
RegWriteString("HKCR", "CLSID\{000214A0-0000-0000-C000-000000000046}\InprocServer32", "", "\SDMMC\WinCE\ceshell.dll")
RegWriteString("HKCR", "CLSID\{000214A1-0000-0000-C000-000000000046}", "DefaultIcon", "\SDMMC\WinCE\ceshell.dll,-4352")
RegWriteString("HKCR", "CLSID\{000214A1-0000-0000-C000-000000000046}", "AltIcon", "\SDMMC\HURA\ceshell.dll,-4355")
RegWriteString("HKCR", "CLSID\{000214A1-0000-0000-C000-000000000046}\InprocServer32", "", "\SDMMC\WinCE\ceshell.dll")
RegWriteString("HKCR", "CLSID\{000214A2-0000-0000-C000-000000000046}\InprocServer32", "", "\SDMMC\WinCE\ceshell.dll")
RegWriteString("HKCR", "CLSID\{56FDF344-FD6D-11d0-958A-006097C9A090}\InprocServer32", "", "\SDMMC\WinCE\ceshell.dll")
Again, no luck. I begin to think that to achieve the target we will have to change Gwes.exe, NK.exe, kill AstProc.exe or other,
in rom related thing. Keep on searching for the solution..
Anyone have full registry backup from other/older unit with working gps/windows of pioneer?