none
how to use NtQuerySystemInformation with SystemFirwareTableInformation in a native application. RRS feed

  • Question

  • hi,

    I am adding some code in my native application, looks all API I called must in the NTDLL.DLL, not all win32 api is available.

    Is there anyone know to use NtQuerySystemInformation with SystemFirmwareTableInformation=0x4C;

    I have a ACPI table in system, And I need to get that table by native application.

    I found the the one of _SYSTEM_INFORMATION_CLASS has SystemFirmwareTableInformation=0x4C; But i don't know

    what's struction returned for SystemFirmwareTableInformation?

    Any sample code? Thank you very much. 

    Or Any other idea about how to get ACPI table in native application? Thanks again.

    ------------------------

    Tuesday, July 16, 2013 2:55 AM

Answers

  • what problem are you solving and why do you need to write a native application?  SystemFirmwareTableInformation is not a documented parameter to NtQuerySystemInformation and this forum does not support the use of undocumented APIs or parameters.

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Tuesday, July 16, 2013 4:59 AM

All replies

  • what problem are you solving and why do you need to write a native application?  SystemFirmwareTableInformation is not a documented parameter to NtQuerySystemInformation and this forum does not support the use of undocumented APIs or parameters.

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Tuesday, July 16, 2013 4:59 AM
  • Thanks Doron

    The problem i want to solve is that the native app in Windows Platform Binary table(one of acpi table available on win8) need to understand what's data in my OEM acpi table. For doing this, the native application need to know where is the acpi table.  wpbt support the command lines parameters, but it's not enough to me. I need to generate a little big data file from ACPI table. And the source data i embedded into my ACPI table. That's why i want to get ACPI data in native application code.

    Tuesday, July 16, 2013 5:15 AM
  • Why must it be a native app?

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Tuesday, July 16, 2013 7:04 AM
  • Based on microsoft documentation, the binary is required to be a native, user-mode application that is executed by the Windows Session Manager during operating system initialization.

    Tuesday, July 16, 2013 7:09 AM
  • Which docs (links please) are you referring to?

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Tuesday, July 16, 2013 7:35 AM
  • thanks Doron,

    Please refer to following link:

    http://msdn.microsoft.com/en-us/library/windows/hardware/hh673517.aspx

    Hope get some design suggestion about get acpi table in native code,

    Tuesday, July 16, 2013 7:43 AM
  • What function does the native app perform outside of reading from the acpi table? What bigger problem are you solving?

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Tuesday, July 16, 2013 2:32 PM
  • a little confused, don't get your point.

    Wednesday, July 17, 2013 2:37 AM
  • I suppose you are asking what's purpose of native app. The major purpose is that this native app will capture some content of BIOS acpi table and save as a disk file.  If SystemFirmwareTableInformation is not open to developer, how about using

    NTSTATUS ZwOpenSection(
      _Out_  PHANDLE SectionHandle,
      _In_   ACCESS_MASK DesiredAccess,
      _In_   POBJECT_ATTRIBUTES ObjectAttributes)
     in native app code, can I use ZwOpenSection to open L"\\Device\\PhysicalMemory" , then native app code go through memory to find ACPI table directly ?

    SystemFirmwareTableInformation
    Wednesday, July 17, 2013 4:01 AM
  • Why do you need to do this at boot with a native app? The same can be done in a win32 app later after boot. And no, reading physical memory won't work

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, July 17, 2013 5:27 AM
  • because win32 app can not meet the customer's requirement.

    Thursday, July 18, 2013 1:05 AM
  • What requirement is that? What problem is that requirement addressing?

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Thursday, July 18, 2013 1:45 AM
  • customer need complete this in pre-OS phase.

    Thursday, July 18, 2013 2:11 AM