That's basically Microsoft's response to the frustration of being a Windows user for the last 2 decades...and it's one reason why Windows is losing market share to mobile devices that don't have these kinds of issues. Driver management should have be revamped decades ago to prevent the kind of junk people have to go through. An executable installer can do whatever-the-hell-it-wants -- and that's the problem. A driver should be a file of a certain type, which the operating system recognizes as a driver. Opening that file should generate a standard OS prompt about installing the driver (which would simply copy it to a specific system location). It shouldn't be necessary to have the device connected for the system to copy that driver (as a single file/object) to a specific location on the system. It shouldn't be necessary to have that device connected to delete that driver. Because the driver should be a single module, you should be able to install / delete / update at will without depending on an executable installer or uninstall utility to keep track of hundreds of files and other changes all over the system.
Companion software should simply check for the presence of the driver and try to communicate with the hardware through that driver.
This is still a shoddy driver installer Netgear problem. It is also an admin problem. Windows did what you told it to do. All the other OS's will do the exact same thing. There isn't an explicit requirement on where and how drivers are stored and run on any of the OS's on recommendations.
Let us break this down:
That's basically Microsoft's response to the frustration of being a Windows user for the last 2 decades...
People should stop buying crummy products.
and it's one reason why Windows is losing market share to mobile devices that don't have these kinds of issues.
Strawman and not correct.
Driver management should have be revamped decades ago to prevent the kind of junk people have to go through.
It has been, Windows has a fairly explicit API that needs to be followed to install a driver.
An executable installer can do whatever-the-hell-it-wants -- and that's the problem.
The don't use an executable installer. Windows does not require it and quite frankly doesn't support it. It is a driver developers decision to utilize an executable installer.
A driver should be a file of a certain type, which the operating system recognizes as a driver. Opening that file should generate a standard OS prompt about installing the driver (which would simply copy it to a specific system location).
Windows driver subsystem only recognizes .inf .dll .ocx .sys and a few others they are listed in detail in the MSDN
It shouldn't be necessary to have the device connected for the system to copy that driver (as a single file/object) to a specific location on the system.
This isn't a Windows requirement. Ask anyone who deploys Windows to large organizations. We preseed drivers all the time. The specific location is %windir%/System32/DRIVERS
It shouldn't be necessary to have that device connected to delete that driver.
It isn't required.
Because the driver should be a single module, you should be able to install / delete / update at will without depending on an executable installer or uninstall utility to keep track of hundreds of files and other changes all over the system.
The actual driver itself is close to this. It isn't a single file but a handful of files stored in the drvstore in the Windows directory.
You are hating on shoddy installers. I agree with this. However it isn't Microsoft's fault people choose to use these shoddy 700meg installers than install 5000 applications in order to install the actual 2MB of .dll .sys and .inf file the device actually needs.
Like JackMDS mentioned, use the vanilla driver and this isn't an issue. Random example: Dell wifi "driver" is 180MB. Actual installed vanilla driver: Just under 5MB.
I've been through all of this. Regardless, Microsoft, the creator of the operating system, is the only one in a position to improve this.
Every driver install should generate a prompt like "Do you want to install the device driver software for [internal driver description]? [more information] [Yes/No]" type of prompt from the operating system. That alone would be enough to discourage hardware vendors from having their own installation packages because they'll have to consider what the user might do with the OS prompt. Having a single "whatever.driver" file would greatly simplify the experience of support. I can't fathom why they would have users download a zipped archive, extract an executable from that (a concept many users still don't grasp) and run through an installer that can be a completely different experience every time.
Breakdown:
This is still a shoddy driver installer Netgear problem. It is also an admin problem. Windows did what you told it to do. All the other OS's will do the exact same thing. There isn't an explicit requirement on where and how drivers are stored and run on any of the OS's on recommendations.
My point: There should be.
That's basically Microsoft's response to the frustration of being a Windows user for the last 2 decades...
People should stop buying crummy products.
Basically what I said: They've stopped buying Windows machines.
and it's one reason why Windows is losing market share to mobile devices that don't have these kinds of issues.
Strawman and not correct.
It's actually my entire point. Microsoft/Windows is the only one in a position to improve this experience. They're finally trying to improve things (and mostly going about it the wrong way) only because they no longer have dominant market share.
Driver management should have be revamped decades ago to prevent the kind of junk people have to go through.
It has been, Windows has a fairly explicit API that needs to be followed to install a driver.
I wanted to make a Windows-compatible OS 20 years ago (yeah, ha ha)...and I've always obsessed about the things Windows does wrong and the best ways to improve them. Specifically driver installation / management / distribution is one of the big things that stumps the average user and they require a PC technician. It's why I can rarely suggest that an average user do a clean Windows install on their own. Why can't a device driver be a simple modular thing (a file that goes into a specific location)? Why should it be a group of files instead of existing in some kind of container format? Why can't I copy all of them to my own personal archive or from one system to another? It would solve
a lot of computer problems for average users if developers could register their download servers with Microsoft and a system like Windows Update could list current/previous versions right from the manufacturer's own server. Of course, there could be appropriate warnings like "This driver has not been certified by Windows Hardware Quality Laboratories" or something like that. Practically every hardware manufacturer would participate because it would save them countless hours of technical support walking people through finding / downloading / extracting / installing / updating / uninstalling drivers. That said, why can't software applications register their own update servers with some kind of Windows Update API so you don't need to have 10+ "update check" background processes? Microsoft is in the position to fix the experience. Period.
An executable installer can do whatever-the-hell-it-wants -- and that's the problem.
The don't use an executable installer. Windows does not require it and quite frankly doesn't support it. It is a driver developers decision to utilize an executable installer.
Believe me, I would have wasted another hour trying to identify the actual chipset if I had the time to do that. The main reason developers choose to have an executable installer is because there's not a OS-recognized file format and API to download "whatever.driver" and get a prompt to install on the system. The closest thing is a zip file that the user has to extract, then right-click an INF or go into Device manager and go through 10 screens before they can browse the drive/folder structure of the whole computer to find the folder where the files were extracted and...nevermind. That's ridiculous.
A driver should be a file of a certain type, which the operating system recognizes as a driver. Opening that file should generate a standard OS prompt about installing the driver (which would simply copy it to a specific system location).
Windows driver subsystem only recognizes .inf .dll .ocx .sys and a few others they are listed in detail in the MSDN
Exactly the problem. Those should all be in a container file. Installing should never extract them from that container file either or scatter files throughout your system folders.
It shouldn't be necessary to have the device connected for the system to copy that driver (as a single file/object) to a specific location on the system.
This isn't a Windows requirement. Ask anyone who deploys Windows to large organizations. We preseed drivers all the time. The specific location is %windir%/System32/DRIVERS
Not exactly a graphical list of drivers the user can select and delete. No. They'll have to bypass numerous warnings to browse system directories, just to see a list of files with bizarre names that don't indicate which device they're for, and whether-or-not they are in-use. Not exactly the same thing...
It shouldn't be necessary to have that device connected to delete that driver.
It isn't required.
Good luck asking a user to find a driver for a device that doesn't exist on their system and delete all traces of it. I'm sure it will only take you 60 seconds or so, right?
Because the driver should be a single module, you should be able to install / delete / update at will without depending on an executable installer or uninstall utility to keep track of hundreds of files and other changes all over the system.
The actual driver itself is close to this. It isn't a single file but a handful of files stored in the drvstore in the Windows directory.
The driver is usually a collection of vaguely-named files. If you can tell what it's for, you'd probably have to do quite a bit of digging to even find out that much. Even then, after deleting it you'd have no confidence whatsoever that all the other stuff is gone that came along with that driver.
You are hating on shoddy installers. I agree with this. However it isn't Microsoft's fault people choose to use these shoddy 700meg installers than install 5000 applications in order to install the actual 2MB of .dll .sys and .inf file the device actually needs.
Hating on the continued proliferation of them because Microsoft has done nothing to fix the problem.
Like JackMDS mentioned, use the vanilla driver and this isn't an issue. Random example: Dell wifi "driver" is 180MB. Actual installed vanilla driver: Just under 5MB.
That's exactly what I do whenever possible. In fact, I even did it to some degree in this case. I was doing *exactly* that (digging through a bloatware-filled install package, hoping to find the basic driver files) to find that "setup.exe" and avoid some of the other junk. I hoped to open it with 7zip or WinRAR to see if files could be extracted, but I just wanted to check first to see if this file was even worth my time by double-clicking to see what the first screen of the installer tells me. I was really completely out of time and wouldn't expect "setup.exe" to have no prompts at all and no way to cancel.
I shouldn't have to bend-over backward to have a decent driver installation experience, which still leads to the occasional experience like this one.