WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

Memory and System Resources

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

Using IntControl(32...) to Return Memory Address

Keywords:    IntControl(32,,,,)	  IntControl (32,,,,)

Question:

Could you provide any examples of the IntControl(32,,,,) command? What are the limitations to its use on NT?

We would like to determine BIOS information on our systems for Y2000 purposes. Is it possible for the IntControl(32,,,,) to return the value at address F000:E061 for example, similar to the way MSD can? Or is this not what the function is intended for.

Answer:

IntControl32. Assuming somehow that you have managed to get an address of some memory location that you wish to inspect, IntControl 32 would let you read it.

It is limited to memory areas that the script has read access to.

It's usage is very rare, and was used to refer to data pointed to in a structure in a BinaryBuffer returned as a result of a DLLCALL operation.

Unless you have a very specifiec need, I would avoid it like the plague.

On the BIOS information question, check my math....

	F000= 15 * 65536
	E061 = (14 * 4096) + (0 * 256) + (6 * 16) + 1

	address=F000+E061

	value=IntControl(32,address,"BYTE",0,0)

	Message("Byte Value at %address% is",value)
Check out MS KB article Q195268:
---------------------------------------------------------------------
The information in this article applies to:

- Microsoft Windows 98
- Microsoft Windows 95
---------------------------------------------------------------------

IMPORTANT: This article contains information about editing the registry.
Before you edit the registry, make sure you understand how to restore it
if a problem occurs. For information about how to do this, view the
"Restoring the Registry" Help topic in Regedit.exe or the "Restoring a
Registry Key" Help topic in Regedt32.exe.

SUMMARY
=======

This article describes how to obtain Basic Input Output System (BIOS)
information from the registry.

MORE INFORMATION
================

WARNING: Using Registry Editor incorrectly can cause serious problems that
may require you to reinstall your operating system. Microsoft cannot
guarantee that problems resulting from the incorrect use of Registry
Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys
And Values" Help topic in Registry Editor (Regedit.exe) or the "Add and
Delete Information in the Registry" and "Edit Registry Data" Help topics
in Regedt32.exe. Note that you should back up the registry before you edit
it.

Using Registry Editor, view the BIOSDate, BIOSName, and BIOSVersion string
values in the following registry key:

HKEY_LOCAL_MACHINE\Enum\Root\*PNP0C01\0000

This information is accurate only if you do not update or change the BIOS
since you last ran Windows 95/98 Setup. If you update or change the BIOS,
you must install Windows 95/98 again to update the registry.

Article ID:   W13433
Filename:   IntControl 32 and Memory Address Location.txt
File Created: 1999:04:15:16:54:00
Last Updated: 1999:04:15:16:54:00