Dave-H Posted May 17, 2020 Author Share Posted May 17, 2020 Just to confirm - Then you need to run in couples, i.e. you first run EITHER the Setup/setip.exe from the unmodified 11.5.20.3 folder OR run from the same folder the dpinst.exe,. Following, you run the ETDUn_inst.exe OR the dpinst.exe /U from the same folder. Then you try doing the same from the "ETD_new" folder, after having verified that all 6 points above check (as long as install and uninstall the same .inf and folder it shoudl work nicely). This involves doing four installs/uninstalls, is that right? An install/uninstall using both setup and dpinst from the original 11.5.20.3 folder, and then from the ETD_new folder. Checking all of the six points after each install or uninstall and recording the results? What about SetupApi.log and DPINST.log, can they be submitted to you with all the cumulative entries from each operation, or do they need to be cleared every time after saving the new data as separate files? Link to comment Share on other sites More sharing options...
RainyShadow Posted May 17, 2020 Share Posted May 17, 2020 (edited) 1 hour ago, jaclaz said: I am not sure to have understood what he meant, it is entirely possible that if you have multiple etd_whatever files in the driverstore the stupid windows attempts to use one before another, but that shouldn't affect the device name . I meant something like a serial number ID, or GUID, or any other kind of pointer to the device, that changes between installs. Anyways, if @Dave-H uploads an export of HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Elantech from a fully working install, i could check it myself. It should be easy to notice (probably). 1 hour ago, Dave-H said: Yes, your animated GIF does play fine in my browser, but I was hoping to be able to play it in something which would allow me to easily stop and start it at particular points, and ideally move frame by frame, but I guess that won't be possible. IfranView can extract all frames of a .gif file. Maybe XnView can do the same? Edited May 17, 2020 by RainyShadow Link to comment Share on other sites More sharing options...
jaclaz Posted May 17, 2020 Share Posted May 17, 2020 I don't know. This is up to you. The key point is that the Setup.exe from 11.4.14.1 in the new folder "runs just fine" (here) using a (slightly) modified ,inf file from 11.5.20.3 (with only a few filenames changed and the reference to ETD.cat removed). While you reported earlier (but maybe there was something else at hand, some leftover from previous attempts, the actual *need* to remove the reference to Etd.cat, whatever) that the only way to run it was renaming it as Setip.exe AND NOT touching in any way not only the .inf but also any of the files in the source folder. Until I found a way via devcon to add the "fake" *ETD0108 device, I had no way to see/test what happens as the Setup.exe or the dpinst.exe refused to run because they found no compatible hardware. After I could do the tests, my claim is [1]: 1) running the setup.exe from the ETD_new folder with my modified .inf installs the driver just fine and uses the files you already tested as working 2) whatever happens here - possibly after a reboot - i.e. whether the driver works at all and if it works it keeps the setting I cannot test nor know 3) running the ETDUn_inst.exe I can not as it "hooks" to the *whatever* real id of the device (and not to my "fake" *ETD108) 4) after having anyway cleaned manually: 5) running the dpinst.exe is EXACTLY the same as running setup.exe in #1 above 6) whatever happens here (same as #2 above) - possibly after a reboot - i.e. whether the driver works at all and if it works it keeps the setting I cannot test nor know 7) running the dpinst.exe /U <full path to the .inf> removes everything was installed and - possibly after a reboot - the system is in the same "clean" state as it was in #4 above, with the exception of the HKLM "Elantech" registry hey that needs to be deleted manually So, if I were you I would try first starting from #4 and only later, having checked that the uninstall in #7 is effective (or cleaning manually what remains) go back to #1. Of course if any of the above do not even start running, you need to find why. If they run, and hopefully install correctly, and even more hopefully they install correctly AND keep the settings, we don't need anything else, it would only be a matter of cleaning/reducing the .inf to make it a decent size, remove the stupid windows 8 and windows 10 stuff, etc. So, as long as you clean the two logs before, you can later extract the last part (starting from the last line after your cleaning of them or first line related to Elan) and state whether you made 1,2,3,4,5,6,7 or 4,5,6,7,0 ,1,2,3. jaclaz [1] actually I also have the additional claim that since it works here, if it doesn't there it is your fault Link to comment Share on other sites More sharing options...
jaclaz Posted May 17, 2020 Share Posted May 17, 2020 P.S. and as a side-side note: http://www.xtreme-lab.net/7gif/en/index.html Quote Downloads 7GIF 1.2.2.1298 (released: May 9, 2017) For Microsoft Windows XP*, Vista* (32bit or 64bit), 7 (32bit or 64bit), 8\8.1 (32bit or 64bit) and 10 (32bit or 64bit). Download the self-installing package (.exe setup, 0.97MB) MD5: 91af523bd73277577bf5ac0bde666d3f (What is this?) Download the stand-alone package (.zip archive, 412KB) MD5: 2e595af6b5eb57740730b821f0405572 (What is this?) needs not to be actually installed, you only need to extract contents of the .zip in a folder. You can slow down, speed up reproduction besides pause and still frames, and it works just fine with the ETD_install.gif If you want I can make an animated .gif video of it running ETD_install.gif ... ... no, wait ... jaclaz Link to comment Share on other sites More sharing options...
Dave-H Posted May 17, 2020 Author Share Posted May 17, 2020 Wow, thank you so much for putting me onto 7GIF, that is absolutely brilliant, I could have done with that for animated GIF files years ago! It does exactly what I wanted. I haven't started the full testing yet, but I just tried running "ETD_new\x86\dpinst.exe /C" just to see what would happen. The driver installed fine, but is not saving settings. No complaints about missing files or anything like that though, so that's good. Link to comment Share on other sites More sharing options...
jumper Posted May 17, 2020 Share Posted May 17, 2020 > ideally move frame by frame, MPC, VLC, QuickTime, or other movie player. Link to comment Share on other sites More sharing options...
Dave-H Posted May 17, 2020 Author Share Posted May 17, 2020 (edited) Thanks @jumper! I'm pretty sure that MPC and VLC do not provide a proper full frame by frame navigation facility, certainly not forwards and backwards, but the QuickTime Player does, and I had completely forgotten that it could open GIF files! Although I have 7GIF now, I could indeed have used the QuickTime Player. Edited May 17, 2020 by Dave-H Typo Link to comment Share on other sites More sharing options...
Dave-H Posted May 17, 2020 Author Share Posted May 17, 2020 (edited) OK, before I go on into any convoluted investigations, can I just say that I copied the setup.exe file from the 11.4.14.1 folder to the ETD_new folder, ran it, and it installed a perfectly working driver, which saves its settings over reboots absolutely fine. I have since tried uninstalling and reinstalling it several times, and it just works, exactly as if should do. So, what are we now worrying about? Edited May 17, 2020 by Dave-H Typo Link to comment Share on other sites More sharing options...
jaclaz Posted May 18, 2020 Share Posted May 18, 2020 (edited) So, there is still a difference between installing the SAME set of files via Setup.exe and via dpinst.exe? The former works AND saves settings whilst the second works BUT NOT saves settings? It is a again "queer" but if it works, it works. Knowing which differences there are in the two different ways to install it would be useful (for a "next" similar issue) but not in any way *needed*. Now, there is only a - totally unneeded - further refining step, the ETD.inf is - now - what I would call an unbearable amount of bloat, almost 2 MB, To make a comparison, the original ETD.inf from (Lenovo) ETD.inf from 11.4.14.1 (actual ETD.sys 11.0.0.31) is 480 KB AND the one from the "Medion" driver is (actual ETD.sys 11.137.2.2) an interesting 9 KB (though this latter version has a coinstaller, that could change the game). So, without taking the "Medion" driver as example, it should be possible to reduce the .inf to the "original" 480 KB or less. Surely we could call this ETD_new an "XP only" driver and remove anything connected to Win8 and Win10, and - additionally - there are a huge amount of "GroupOptions" (or whatever) for programs that either do not exist at all in XP or that exist in versions that those added commands cannot "hook" properly. BTW, there are no "groupoptions" in the original 11.4.14.1 .inf, so it is very likely that they - whatever they are - only work in much later driver versions. Comparing these two .inf's (the modified 11.5.20.3 in use against the "Medion" one, which due to its size is the only "human parsable" one) I have a doubt about the ETDMcpl.dll , as it actually is the *only* file that is registered (in both the .inf's): Quote [ETD_System.AddReg] HKCR,CLSID\{0066D4B3-8DE0-4D08-AA83-EDD50E2431F0}\InProcServer32,,%REG_EXPAND_SZ%,"%ProgramFiles%\%TargetDir%\ETDMcpl.dll" HKCR,CLSID\{0066D4B3-8DE0-4D08-AA83-EDD50E2431F0}\InProcServer32,ThreadingModel,%REG_SZ%,"Apartment" HKLM,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved",{0066D4B3-8DE0-4D08-AA83-EDD50E2431F0},%REG_SZ%,"ELAN Control Panel" So, it must be *doing something* , very likely that *something* you didn't notice till now. Side-side note about 7GIF, the idea (mine) is to not use cannons to shoot at flies, 7GIF (in my perverted mind ) is the perfect companion to the nice little tool I use to make these animated .gif's (JFYI): https://msfn.org/board/topic/171205-licecap-useful-screenshot-to-animated-gif-recorder/ the two, summed together, are less than the half the size of the (stupid) ETD.inf . jaclaz Edited May 18, 2020 by jaclaz Link to comment Share on other sites More sharing options...
jaclaz Posted May 18, 2020 Share Posted May 18, 2020 Ok, so I have a new claim. The attached ETD_XP.inf, "only" 300 KB in size can replace the ETD.inf in the ETD_new folder and will manage to install just fine the driver via Setup.exe in XP. jaclaz ETD_XP.zip Link to comment Share on other sites More sharing options...
Dave-H Posted May 18, 2020 Author Share Posted May 18, 2020 That new INF still works fine! Surely all those application specific entries aren't needed? If they were removed it would be a lot smaller! The only other thing I would mention is that the driver is still being recorded as "ELAN Touchpad 11.5.20.3_X86_WHQL". Now it isn't 11.5.20.3 any more of course, as all the files are from 11.4.14.1, and it certainly isn't "WHQL" now either! Perhaps that can be changed in the INF to now record the correct details? Link to comment Share on other sites More sharing options...
jaclaz Posted May 18, 2020 Share Posted May 18, 2020 (edited) 1 hour ago, Dave-H said: The only other thing I would mention is that the driver is still being recorded as "ELAN Touchpad 11.5.20.3_X86_WHQL". Now it isn't 11.5.20.3 any more of course, as all the files are from 11.4.14.1, and it certainly isn't "WHQL" now either! Perhaps that can be changed in the INF to now record the correct details? Sure, you just need to change (I already corrected the reference in the beginning to point to the correct strings) the values in the "Strings table" section at the very end of the .inf, currently: Quote DriverDate = "07/20/2015" DriverVersion = "11.5.20.3" I believe that these: Quote DriverBit = "X86" DriverVersionExtend = "WHQL" ; Beta or WHQL can be *anything* and are just suffixes to the "DriverVersion", i.e. (say): Quote DriverDate = "05/20/2020" DriverVersion = "11.4.99.9" DriverBit = "X86" DriverVersionExtend = "ETD0108" will result in: "ELAN Touchpad 11.4.99.9_X86_ETD0108" Please note how even the "original" 11.4.14.1 is completely arbitrary, as the .sys driver file is actually 11.0.0.31. 1 hour ago, Dave-H said: That new INF still works fine! Good. 1 hour ago, Dave-H said: Surely all those application specific entries aren't needed? If they were removed it would be a lot smaller! Yep, I believe they can be removed - if not all - in large part. What I would still do would be checking if re-adding the ETDMcpl.dll is useful (likely it has to do with the "control panel", possibly the added tab to mouse properties?) And of course once you have a "final" version, all the entries for files currently remmed out with ";" can be deleted. jaclaz P.S. To clear the note about ETDMcpl.dll, since the entry for it in the .inf is already there, it should be enough to copy to the \Program Files\Elantech\ folder the ETDMcpl.dll (from 11.4.14.1) and see if its presence changes something. Edited May 18, 2020 by jaclaz Link to comment Share on other sites More sharing options...
Dave-H Posted May 18, 2020 Author Share Posted May 18, 2020 Returning ETDMcpl.dll to the Elantech folder didn't seem to do anything. It appears to be a shell extension looking at the registry entries that reference it. It must be something to do with the icon to launch the touchpad control panel that some versions of the driver put into the Windows Control Panel, or as you say it could be something to do with the Mouse Properties tab, which includes a "properties" launch button for the control panel. I think they're not there on this driver because it is an Asus Smart Gesture driver, not an Elan driver. The icon in the system tray is an Asus-style one, not an Elan-style one, and when you hover the cursor over it, what pops up is "Asus Smart Gesture". Through all this experimentation with different versions of the driver, the Elan ones have had the Mouse Properties tab (and sometimes, but not always, the Windows Control Panel entry) and the Asus ones don't. The only way of launching the control panel with the Asus drivers is to double click the system tray icon as far as I can see. That's why I had to do the renaming trick on the ETDSimpleUI.exe file, as I guess what runs when you double click the icon is hard coded to be "Asus_UI.exe". Quite how it determines the version of the Asus UI to run I don't know as there are different versions for different operating systems, but maybe on a normal install it just senses what OS it is and runs the appropriate version, defaulting to Asus_UI.exe on XP. Link to comment Share on other sites More sharing options...
jaclaz Posted May 18, 2020 Share Posted May 18, 2020 (edited) Hmmm. Can you try renaming back Asus_UI.exe to ETDSimpleUI.exe? In ETDCrtl.exe there are hardcoded (snippet from Bintext): Quote 00000015A1E0 00000055AFE0 0 \ASUS_UI_Win8.exe 00000015A204 00000055B004 0 \ASUS_UI.exe 00000015A224 00000055B024 0 #32770 00000015A234 00000055B034 0 WerFault.exe 00000015A250 00000055B050 0 main.cpl 00000015A268 00000055B068 0 Can't find ETDAniConf or ETDUI or Lenovo. 00000015A2BC 00000055B0BC 0 \ETDSimpleUI_Win8.exe 00000015A2E8 00000055B0E8 0 \ETDSimpleUI.exe 00000015A30C 00000055B10C 0 Can't find ETDSimpleUI. 00000015A33C 00000055B13C 0 \ToshibaTp_Win8.exe 00000015A364 00000055B164 0 \ToshibaTp.exe It seems like the good guys @Elantech made a "one size fits all" executable that calls *all* OEM files, possibly on a "first come first served" basis. And in ETD.sys there are: Quote 000000043DCC 0000000549CC 0 @%ProgramFiles%/Elantech/ETDMcpl.dll,-6 000000043E1C 000000054A1C 0 \Registry\Machine\Software\Classes\CLSID\{3EA22083-D5BF-411b-A6D6-A27541794266} 000000043EBE 000000054ABE 0 Elan Control panel jaclaz Edited May 18, 2020 by jaclaz Link to comment Share on other sites More sharing options...
Dave-H Posted May 18, 2020 Author Share Posted May 18, 2020 I tried renaming Asus_UI.exe to ETDSimpleUI.exe and rebooted. Double clicking the system tray icon now just brings up the Mouse Properties window. This would be fine I suppose if there was a tab there to allow you to access the control panel, but there isn't! I seem to remember that some of the Elan drivers did actually work like that on 8.1, to access the touchpad control panel via the Mouse Properties. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now