82 lines
2.1 KiB
C++
82 lines
2.1 KiB
C++
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
// Copyright (C) Microsoft Corporation, 1997.
|
||
|
//
|
||
|
// File: N E T O E M D H . C P P
|
||
|
//
|
||
|
// Contents:
|
||
|
//
|
||
|
// Notes:
|
||
|
//
|
||
|
// Author: kumarp
|
||
|
//
|
||
|
//----------------------------------------------------------------------------
|
||
|
|
||
|
#include "pch.h"
|
||
|
#pragma hdrstop
|
||
|
#include "kkutils.h"
|
||
|
#include "ncreg.h"
|
||
|
#include "ncsetup.h"
|
||
|
|
||
|
|
||
|
const INT MAX_TEMPSTR_SIZE = 1024;
|
||
|
|
||
|
static const WCHAR c_szKeyRoot[] = L"SYSTEM\\CurrentControlSet\\Services\\Ndis\\NetDetect\\";
|
||
|
static const WCHAR c_szInfFileName[] = L"NetOemDh.Inf";
|
||
|
|
||
|
|
||
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// function: SetupNetOemDhInfo
|
||
|
//
|
||
|
// Purpose: Create netcard detection info in registry
|
||
|
//
|
||
|
// Arguments: none
|
||
|
//
|
||
|
// Author: kumarp 17-June-97
|
||
|
//
|
||
|
// Notes: this function replaces ParseNetoemdhInfFile.
|
||
|
// it uses the Win95 style INF file to create the same info
|
||
|
// that the old function ParseNetoemdhInfFile created.
|
||
|
// Thus functionally this does not require change in other modules.
|
||
|
//
|
||
|
HRESULT HrSetupNetOemDhInfo()
|
||
|
{
|
||
|
DefineFunctionName("SetupNetOemDhInfo");
|
||
|
|
||
|
TraceFunctionEntry(ttidNetSetup);
|
||
|
|
||
|
HINF hinf=NULL;
|
||
|
HWND hwnd = NULL;
|
||
|
|
||
|
HRESULT hr = HrSetupOpenInfFile(c_szInfFileName, NULL,
|
||
|
INF_STYLE_WIN4, NULL, &hinf);
|
||
|
if (SUCCEEDED(hr))
|
||
|
{
|
||
|
HKEY hkey;
|
||
|
|
||
|
hr = HrRegCreateKeyEx(HKEY_LOCAL_MACHINE, c_szKeyRoot,
|
||
|
REG_OPTION_NON_VOLATILE, KEY_WRITE,
|
||
|
NULL, &hkey, NULL);
|
||
|
if (SUCCEEDED(hr))
|
||
|
{
|
||
|
BOOL fStatus =
|
||
|
::SetupInstallFromInfSection(hwnd, hinf, L"NetDetect",
|
||
|
SPINST_REGISTRY, hkey,
|
||
|
NULL, NULL, NULL, NULL, NULL, NULL);
|
||
|
if (!fStatus)
|
||
|
{
|
||
|
hr = HrFromLastWin32Error();
|
||
|
}
|
||
|
RegSafeCloseKey(hkey);
|
||
|
}
|
||
|
::SetupCloseInfFile(hinf);
|
||
|
}
|
||
|
|
||
|
TraceFunctionError(hr);
|
||
|
|
||
|
return hr;
|
||
|
}
|
||
|
|