Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV

Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


Problem reading Registry

OSR_Community_UserOSR_Community_User Member Posts: 110,217
Hi,

I am developing a driver for PCMCIA card.

I have stored some information in the Registry and want to read it
on driver start.
On normal card insertion this works very fine but if I have a card
inserted on boot ZwOpenKey fails with Error 0xC0000034
STATUS_OBJECT_NAME_NOT_FOUND.

Maybe the registry is not present at this time?
Any idea how to avoid this problem?

Thanks
Martin

Comments

  • Mark_RoddyMark_Roddy Member - All Emails Posts: 4,588
    Boot drivers have major restrictions, this is one of them. Don't open the
    registry in your driver entry routine. You aren't *really* a boot driver, as
    you aren't required to boot the system. Wait for AddDevice or StartDevice to
    access the registry. Ooops, we are talking W2K right?


    Mark Roddy
    Windows 2000/NT Consultant
    Hollis Technology Solutions
    www.hollistech.com

    -----Original Message-----
    From: [email protected]
    [mailto:[email protected]]On Behalf Of Martin Gossner
    Sent: Wednesday, April 26, 2000 6:14 AM
    To: NT Developers Interest List
    Subject: [ntdev] Problem reading Registry


    Hi,

    I am developing a driver for PCMCIA card.

    I have stored some information in the Registry and want to read it
    on driver start.
    On normal card insertion this works very fine but if I have a card
    inserted on boot ZwOpenKey fails with Error 0xC0000034
    STATUS_OBJECT_NAME_NOT_FOUND.

    Maybe the registry is not present at this time?
    Any idea how to avoid this problem?

    Thanks
    Martin



    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')
  • OSR_Community_User-35OSR_Community_User-35 Member Posts: 154
    Parts of the registry are not available at boot time. But we read
    without problem from the System hive very early -- in DeviceEntry()
    of a SCSI port driver, starting in the SCSI miniport group, on NT4.

    -----------------------------------------------------------------------
    Dave Cox
    Hewlett-Packard Co.
    HPSO/SSMO (Santa Barbara)
    https://ecardfile.com/id/Dave+Cox


    -----Original Message-----
    From: Mark Roddy [mailto:[email protected]]
    Sent: Wednesday, April 26, 2000 4:56 AM
    To: NT Developers Interest List
    Subject: [ntdev] RE: Problem reading Registry



    Boot drivers have major restrictions, this is one of them. Don't open the
    registry in your driver entry routine. You aren't *really* a boot driver, as
    you aren't required to boot the system. Wait for AddDevice or StartDevice to
    access the registry. Ooops, we are talking W2K right?


    Mark Roddy
    Windows 2000/NT Consultant
    Hollis Technology Solutions
    www.hollistech.com

    -----Original Message-----
    From: [email protected]
    [mailto:[email protected]]On Behalf Of Martin Gossner
    Sent: Wednesday, April 26, 2000 6:14 AM
    To: NT Developers Interest List
    Subject: [ntdev] Problem reading Registry


    Hi,

    I am developing a driver for PCMCIA card.

    I have stored some information in the Registry and want to read it
    on driver start.
    On normal card insertion this works very fine but if I have a card
    inserted on boot ZwOpenKey fails with Error 0xC0000034
    STATUS_OBJECT_NAME_NOT_FOUND.

    Maybe the registry is not present at this time?
    Any idea how to avoid this problem?

    Thanks
    Martin



    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')



    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')
  • OSR_Community_UserOSR_Community_User Member Posts: 110,217
    Hi,

    Your right I am talking about W2K.
    Now I tried to access registry at AddDevice and StartDevice, but it
    failed in both cases.
    I donot know why my driver is started before the registry is working
    properly.

    Martin

    -----Original Message-----

    Boot drivers have major restrictions, this is one of them. Don't open
    the
    registry in your driver entry routine. You aren't *really* a boot driver,
    as
    you aren't required to boot the system. Wait for AddDevice or
    StartDevice
    to
    access the registry. Ooops, we are talking W2K right?


    Mark Roddy
    Windows 2000/NT Consultant
    Hollis Technology Solutions
    www.hollistech.com
  • Mark_RoddyMark_Roddy Member - All Emails Posts: 4,588
    None-the-less I have had exactly the same experience as BOTH of you. My
    Scsiport drivers appears to have access to the registry, but another boot
    start driver doesn't. Start the same driver at system start and everything
    works fine. I have no explanation, this is simply an observation. It also
    matches exactly the report of the original poster.


    Mark Roddy
    Windows 2000/NT Consultant
    Hollis Technology Solutions
    www.hollistech.com

    -----Original Message-----
    From: [email protected]
    [mailto:[email protected]]On Behalf Of COX,DAVID
    (HP-Roseville,ex1)
    Sent: Wednesday, April 26, 2000 2:33 PM
    To: NT Developers Interest List
    Subject: [ntdev] RE: Problem reading Registry


    Parts of the registry are not available at boot time. But we read
    without problem from the System hive very early -- in DeviceEntry()
    of a SCSI port driver, starting in the SCSI miniport group, on NT4.

    -----------------------------------------------------------------------
    Dave Cox
    Hewlett-Packard Co.
    HPSO/SSMO (Santa Barbara)
    https://ecardfile.com/id/Dave+Cox


    -----Original Message-----
    From: Mark Roddy [mailto:[email protected]]
    Sent: Wednesday, April 26, 2000 4:56 AM
    To: NT Developers Interest List
    Subject: [ntdev] RE: Problem reading Registry



    Boot drivers have major restrictions, this is one of them. Don't open the
    registry in your driver entry routine. You aren't *really* a boot driver, as
    you aren't required to boot the system. Wait for AddDevice or StartDevice to
    access the registry. Ooops, we are talking W2K right?


    Mark Roddy
    Windows 2000/NT Consultant
    Hollis Technology Solutions
    www.hollistech.com

    -----Original Message-----
    From: [email protected]
    [mailto:[email protected]]On Behalf Of Martin Gossner
    Sent: Wednesday, April 26, 2000 6:14 AM
    To: NT Developers Interest List
    Subject: [ntdev] Problem reading Registry


    Hi,

    I am developing a driver for PCMCIA card.

    I have stored some information in the Registry and want to read it
    on driver start.
    On normal card insertion this works very fine but if I have a card
    inserted on boot ZwOpenKey fails with Error 0xC0000034
    STATUS_OBJECT_NAME_NOT_FOUND.

    Maybe the registry is not present at this time?
    Any idea how to avoid this problem?

    Thanks
    Martin



    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')



    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')

    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Kernel Debugging 30 January 2023 Live, Online
Developing Minifilters 20 March 2023 Live, Online
Internals & Software Drivers 17 April 2023 Live, Online
Writing WDF Drivers 22 May 2023 Live, Online