JoeSchmoe007
n00b
- Joined
- Sep 21, 2011
- Messages
- 29
After installing Windows Server 2012 trial on my new system built around Asus Z87-Plus motherboard I found that all Windows 8 drivers worked except the network. When setup for network drivers was run it could not find any known network adapters.
After doing some research on the subject, it turned out that manufacturers sometimes disable network support for certain operating systems in .INF files even though the drivers may work just fine. There can be multiple reasons for this but the one I think most likely is they just dont want to support more operating systems than they have to.
Thankfully, in some cases it is possible to modify .INF file to force network driver to work in OS for which manufacturer didnt enable it.
YOU ARE TRYING THIS ON YOUR OWN RISK! DO NOT BLAME ME IF THIS MAKES YOUR OS INOPERABLE/UNBOOTABLE! DO NOT USE THIS APPROACH ON PRODUCTION SYSTEMS!
The source of information for this guide was this page (for a different network card): http://www.ivobeerens.nl/2012/08/08/enable-the-intel-82579v-nic-in-windows-server-2012/ that in turned used this one: http://homeservershow.com/forums/in...-ud5h-and-other-motherboards-with-server-oss/ - so these people get most of the credit.
I will describe how to make Windows 8 driver for Intel® Ethernet Connection I217-V (on-board network adapter on my Z87-Plus motherboard) work in Windows 2012. This approach can be modified for other hardware.
1) Download network drivers for Windows 8. In my case I prefer drivers directly from Intel if available. Here is how to get them for Asus Z87-Plus:
2) Executable you just downloaded is self-extracted .ZIP archive. Extract it using 7-Zip (or other archiver). If you just run it will most likely extract to some temporary folder and start driver installer this is not what you want now.
3) At this point you need to know exact network card name. In my case I already had drivers for Windows 7 x-64 installed and via Device Manager network card was identified as Intel® Ethernet Connection I217-V.
4) Search using Windows Explorer (or any other utility) for your network card name in the folder where extracted network driver setup is located. In my case I searched for i217-V (no quotes).
5) It is possible that more than one .INF file will be found in my case there were 2. First was called e1d62x64.inf, located in PRO1000\Winx64\NDIS62 and second was called e1d63x64.inf, located in PRO1000\Winx64\NDIS63 folder. We are interested in the second one. Why? Because NDIS63 folder is for Windows 8/2012, NDIS62 is for Windows 7/2008 R2 and NDIS61 is for Windows Vista/2008 (I cant recall where I found it but this seems to be general designation). To confirm this is the one we want open e1d63x64.inf in editor and in the beginning of the file right after Intel copyright there are lines (in this case they start at line 27):
[ControlFlags]
ExcludeFromSelect = \
PCI\VEN_8086&DEV_153A,\
PCI\VEN_8086&DEV_153B
[Intel]
[Intel.NTamd64.6.2.1]
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A.6.2.1, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A.6.2.1, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A.6.2.1, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00008086
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A.6.2.1, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A.6.2.1, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A.6.2.1, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
%E1559NC.DeviceDesc% = E1559.6.2.1, PCI\VEN_8086&DEV_1559
%E1559NC.DeviceDesc% = E1559.6.2.1, PCI\VEN_8086&DEV_1559&SUBSYS_00008086
%E1559NC.DeviceDesc% = E1559.6.2.1, PCI\VEN_8086&DEV_1559&SUBSYS_00011179
[Intel.NTamd64.6.2]
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
6) Find [ControlFlags] section in the .INF file. In my case it looks like this:
Because these lines are there your network adapter is not detected by installer. First guide I linked to suggest deleting these lines. I recommend commenting them out so that this section looks like this:
7) Now from the first guide I linked to we know we need to copy some lines from [Intel.NTamd64.6.2.1] section (Windows 8) to [Intel.NTamd64.6.2] section (Windows Server 2012). But which lines do we need to copy? As you can see in this case there are 4 different sections referred in [Intel.NTamd64.6.2.1] section: E153A.6.2.1 (3 lines), E153B.6.2.1 (3 lines), E155A.6.2.1 (3 lines) and E1559.6.2.1 (3 lines). In order to find out which one you need we search for i217-V within .INF file. The first match brings us to [E153B.6.2.1], so these are the lines we need to copy.
To sum it up:
[Intel.NTamd64.6.2] originally looked like this:
After changes it will look like this (3 lines added at the bottom):
Save this updated .INF file.
I am not allowed to post attachments so I have to link to this screenshot inline. Sorry that it makes post so wide but I really wanted for everything I changed to be visible.
8) Disable the driver integrity checks and enable test signing by using the following commands at the command prompt:
9) Reboot for these commands to become effective
10) Run installer for network drivers (in my case it was APPS\PROSETDX\Winx64\DxSetup.exe - Intel Network Connection Install Wizard).
At some point you will receive Windows Security Dialog saying "Windows can't verify the publisher of this driver software" - select "install this driver anyway.
If everything goes as planned after installer completes you will have network driver installed and your network connection will be working.
Alternatively you can try to install driver via Device Manager by pointing it to the folder with modified .INF file but I found that this method doesnt install some Intel-specific components.
11) Enable the driver integrity checks and disable test signing again by using the following commands at the command prompt:
12) Reboot for these commands to become effective
You are done.
After doing some research on the subject, it turned out that manufacturers sometimes disable network support for certain operating systems in .INF files even though the drivers may work just fine. There can be multiple reasons for this but the one I think most likely is they just dont want to support more operating systems than they have to.
Thankfully, in some cases it is possible to modify .INF file to force network driver to work in OS for which manufacturer didnt enable it.
YOU ARE TRYING THIS ON YOUR OWN RISK! DO NOT BLAME ME IF THIS MAKES YOUR OS INOPERABLE/UNBOOTABLE! DO NOT USE THIS APPROACH ON PRODUCTION SYSTEMS!
The source of information for this guide was this page (for a different network card): http://www.ivobeerens.nl/2012/08/08/enable-the-intel-82579v-nic-in-windows-server-2012/ that in turned used this one: http://homeservershow.com/forums/in...-ud5h-and-other-motherboards-with-server-oss/ - so these people get most of the credit.
I will describe how to make Windows 8 driver for Intel® Ethernet Connection I217-V (on-board network adapter on my Z87-Plus motherboard) work in Windows 2012. This approach can be modified for other hardware.
1) Download network drivers for Windows 8. In my case I prefer drivers directly from Intel if available. Here is how to get them for Asus Z87-Plus:
a. Go to https://downloadcenter.intel.com/default.aspx
b. Select "Desktop Boards" for Product Family
c. Select "Intel 8 Series Chipset Boards" for product line
d. Select "Intel Desktop Board DZ87KLT-75K" for Product name
e. Press "Find"
f. Select Windows 8, 64-bit Operating System. This will narrow down the list to the subset for your OS.
g. Click on LAN: Intel® Gigabit Ethernet Controller driver for Windows 8 (as of now direct link is https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&DwnldID=22862&lang=eng)
h. Download the driver for Windows 8 64-bit (PROWin8_64_18.3.exe as of now but it may change as Intel publishes updated drivers)
b. Select "Desktop Boards" for Product Family
c. Select "Intel 8 Series Chipset Boards" for product line
d. Select "Intel Desktop Board DZ87KLT-75K" for Product name
e. Press "Find"
f. Select Windows 8, 64-bit Operating System. This will narrow down the list to the subset for your OS.
g. Click on LAN: Intel® Gigabit Ethernet Controller driver for Windows 8 (as of now direct link is https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&DwnldID=22862&lang=eng)
h. Download the driver for Windows 8 64-bit (PROWin8_64_18.3.exe as of now but it may change as Intel publishes updated drivers)
2) Executable you just downloaded is self-extracted .ZIP archive. Extract it using 7-Zip (or other archiver). If you just run it will most likely extract to some temporary folder and start driver installer this is not what you want now.
3) At this point you need to know exact network card name. In my case I already had drivers for Windows 7 x-64 installed and via Device Manager network card was identified as Intel® Ethernet Connection I217-V.
4) Search using Windows Explorer (or any other utility) for your network card name in the folder where extracted network driver setup is located. In my case I searched for i217-V (no quotes).
5) It is possible that more than one .INF file will be found in my case there were 2. First was called e1d62x64.inf, located in PRO1000\Winx64\NDIS62 and second was called e1d63x64.inf, located in PRO1000\Winx64\NDIS63 folder. We are interested in the second one. Why? Because NDIS63 folder is for Windows 8/2012, NDIS62 is for Windows 7/2008 R2 and NDIS61 is for Windows Vista/2008 (I cant recall where I found it but this seems to be general designation). To confirm this is the one we want open e1d63x64.inf in editor and in the beginning of the file right after Intel copyright there are lines (in this case they start at line 27):
; e1d63x64.INF (Intel 64 bit extension Platform Only,
; Windows 8 64 bit extension)
So we know we are looking at the right file. The area of interest where we will make changes looks like this in original INF file (lines 46-77 in my case):; Windows 8 64 bit extension)
[ControlFlags]
ExcludeFromSelect = \
PCI\VEN_8086&DEV_153A,\
PCI\VEN_8086&DEV_153B
[Intel]
[Intel.NTamd64.6.2.1]
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A.6.2.1, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A.6.2.1, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A.6.2.1, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00008086
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A.6.2.1, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A.6.2.1, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A.6.2.1, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
%E1559NC.DeviceDesc% = E1559.6.2.1, PCI\VEN_8086&DEV_1559
%E1559NC.DeviceDesc% = E1559.6.2.1, PCI\VEN_8086&DEV_1559&SUBSYS_00008086
%E1559NC.DeviceDesc% = E1559.6.2.1, PCI\VEN_8086&DEV_1559&SUBSYS_00011179
[Intel.NTamd64.6.2]
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
6) Find [ControlFlags] section in the .INF file. In my case it looks like this:
[ControlFlags]
ExcludeFromSelect = \
PCI\VEN_8086&DEV_153A,\
PCI\VEN_8086&DEV_153B
ExcludeFromSelect = \
PCI\VEN_8086&DEV_153A,\
PCI\VEN_8086&DEV_153B
Because these lines are there your network adapter is not detected by installer. First guide I linked to suggest deleting these lines. I recommend commenting them out so that this section looks like this:
[ControlFlags]
;ExcludeFromSelect = \
; PCI\VEN_8086&DEV_153A,\
; PCI\VEN_8086&DEV_153B
;ExcludeFromSelect = \
; PCI\VEN_8086&DEV_153A,\
; PCI\VEN_8086&DEV_153B
7) Now from the first guide I linked to we know we need to copy some lines from [Intel.NTamd64.6.2.1] section (Windows 8) to [Intel.NTamd64.6.2] section (Windows Server 2012). But which lines do we need to copy? As you can see in this case there are 4 different sections referred in [Intel.NTamd64.6.2.1] section: E153A.6.2.1 (3 lines), E153B.6.2.1 (3 lines), E155A.6.2.1 (3 lines) and E1559.6.2.1 (3 lines). In order to find out which one you need we search for i217-V within .INF file. The first match brings us to [E153B.6.2.1], so these are the lines we need to copy.
To sum it up:
[Intel.NTamd64.6.2] originally looked like this:
[Intel.NTamd64.6.2]
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
After changes it will look like this (3 lines added at the bottom):
[Intel.NTamd64.6.2]
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00008086
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00011179
; DisplayName Section DeviceID
; ----------- ------- --------
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00008086
%E153BNC.DeviceDesc% = E153B.6.2.1, PCI\VEN_8086&DEV_153B&SUBSYS_00011179
Save this updated .INF file.
I am not allowed to post attachments so I have to link to this screenshot inline. Sorry that it makes post so wide but I really wanted for everything I changed to be visible.

8) Disable the driver integrity checks and enable test signing by using the following commands at the command prompt:
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
bcdedit -set TESTSIGNING ON
9) Reboot for these commands to become effective
10) Run installer for network drivers (in my case it was APPS\PROSETDX\Winx64\DxSetup.exe - Intel Network Connection Install Wizard).
At some point you will receive Windows Security Dialog saying "Windows can't verify the publisher of this driver software" - select "install this driver anyway.
If everything goes as planned after installer completes you will have network driver installed and your network connection will be working.
Alternatively you can try to install driver via Device Manager by pointing it to the folder with modified .INF file but I found that this method doesnt install some Intel-specific components.
11) Enable the driver integrity checks and disable test signing again by using the following commands at the command prompt:
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING OFF
bcdedit -set TESTSIGNING OFF
12) Reboot for these commands to become effective
You are done.
Last edited: