News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Anyone with Windows Seven? Can you test this?

Started by baltoro, February 02, 2011, 09:47:48 PM

Previous topic - Next topic

baltoro

I've written an incredibly bloated assembly library that determines the Windows Operating System version, and some other features of the local computer environment that might be useful, and I need someone that is running Windows Seven (or, even Windows Vista) to test it. I am running on Windows XP Professional, so there are certain features of the DLL that won't execute on my system.
Thanks,...I appreciate it.
I've posted it here: My Completely Useless Library.
The one thing that I didn't concern myself with was including a manifest file (since it's a legacy application, I didn't think it needed one). Also, you don't need Administrative Privileges to run it (although it will tell you if you are running as an Administrator).
All it does, is gather information, and write it out to file. It doesn't make any registry entries (or, even check any), nor, does it make any security context alterations.
Baltoro

zemtex

Sounds like a hacking feature  :bdg

Although it could also be used for crash reports  :lol
I have been puzzling with lego bricks all my life. I know how to do this. When Peter, at age 6 is competing with me, I find it extremely neccessary to show him that I can puzzle bricks better than him, because he is so damn talented that all that is called rational has gone haywire.

baltoro

Quote from: ZEMTEXSounds like a hacking feature :bdg
...After awhile,...EVERYTHING sounds like a hacking feature,...
...I'd take that as a compliment, but, as we all know, I'm an idiot. I couldn't hack my own neuroses.
Baltoro

TmX

Runs well on Win 7 32-bit



Operating System Info.txt
Quote--------------------------------------------------------------------------------
Today's Date is: February 3, 2011
Preliminary Operating System Information:
--------------------------------------------------------------------------------
Current User Name is: Andre
Local Computer Name is: PANOPTICON
Local Account Name is: Andre
Domain Name is: PANOPTICON
The User's SID is: S-1-5-21-2247466593-2056934474-2066091221-1000
The current user does NOT have Administrative Privileges.
The Computer's Processor Architecture is INTEL 32-Bit.
The CPUID instruction is available in the instruction set of the processor.
Processor Feature: The Read Time-Stamp Counter (RDTSC) Instruction is available.
Processor Feature: The Multimedia Extensions (MMX) instruction set is available.
Processor Feature: Streaming SIMD Extensions (SSE) instruction set is available.
Processor Feature: Streaming SIMD Extensions 2 (SSE2) instruction set is available.
Processor Feature: Streaming SIMD Extensions 3 (SSE3)  instruction set is available.
Physical addresses greater than 32-bit are supported on processor (all x64 processors support PAE).
Processor Feature: Data Execution Prevention (DEP) Page execute prevention is available.
The Installed Operating System is: Windows Seven, Professional.
The Build Number of the Operating System is: 7600
There are NO currently installed Service Packs.
--------------------------------------------------------------------------------
Current User Name is: Andre
Local Computer Name is: PANOPTICON
Local Account Name is: Andre
Domain Name is: PANOPTICON
The User's SID is: S-1-5-21-2247466593-2056934474-2066091221-1000
The current user does NOT have Administrative Privileges.
The Computer's Processor Architecture is INTEL 32-Bit.
The CPUID instruction is available in the instruction set of the processor.
Processor Feature: The Read Time-Stamp Counter (RDTSC) Instruction is available.
Processor Feature: The Multimedia Extensions (MMX) instruction set is available.
Processor Feature: Streaming SIMD Extensions (SSE) instruction set is available.
Processor Feature: Streaming SIMD Extensions 2 (SSE2) instruction set is available.
Processor Feature: Streaming SIMD Extensions 3 (SSE3)  instruction set is available.
Physical addresses greater than 32-bit are supported on processor (all x64 processors support PAE).
Processor Feature: Data Execution Prevention (DEP) Page execute prevention is available.
The Installed Operating System is: Windows Seven, Professional.
The Build Number of the Operating System is: 7600
There are NO currently installed Service Packs.

clive

Win7 Unprofessional, on a netbook in Ireland. The Atom is 64-bit capable and supports up to SSE3S

--------------------------------------------------------------------------------
Today's Date is: February 3, 2011
Preliminary Operating System Information:
--------------------------------------------------------------------------------
Current User Name is: CT
Local Computer Name is: ZACK
Local Account Name is: CT
Domain Name is: ZACK
The User's SID is: S-1-5-21-1102546136-3212881680-2073631500-1000
The current user does NOT have Administrative Privileges.
The Computer's Processor Architecture is INTEL 32-Bit.
The CPUID instruction is available in the instruction set of the processor.
Processor Feature: The Read Time-Stamp Counter (RDTSC) Instruction is available.
Processor Feature: The Multimedia Extensions (MMX) instruction set is available.
Processor Feature: Streaming SIMD Extensions (SSE) instruction set is available.
Processor Feature: Streaming SIMD Extensions 2 (SSE2) instruction set is available.
Processor Feature: Streaming SIMD Extensions 3 (SSE3)  instruction set is available.
Physical addresses greater than 32-bit are supported on processor (all x64 processors support PAE).
Processor Feature: Data Execution Prevention (DEP) Page execute prevention is available.
The Installed Operating System is: Windows Seven, Starter Edition.
The Build Number of the Operating System is: 7600
There are NO currently installed Service Packs.
It could be a random act of randomness. Those happen a lot as well.

sinsi

OK on Win7 Pro except for
QuoteThe Computer's Processor Architecture is INTEL 32-Bit.
CPU is an AMD Phenom II
Light travels faster than sound, that's why some people seem bright until you hear them.

Glenn9999

Quote from: baltoro on February 02, 2011, 09:47:48 PM
I've written an incredibly bloated assembly library that determines the Windows Operating System version, and some other features of the local computer environment that

Thanks for posting this.  I was needing to find the answer to a couple of things that your code answered.

baltoro

Thanks everyone, for the feedback (especially, Sinsi, and I don't know why that happened  :eek),...that's an enormous help.
By the way, Dave is disgruntled, too,...looks like I'll have to refund his money.  :bg
There are a number of errors, I'm discovering, but, if you read the code (and, warning, it's lengthy and tedious), you will find that there aren't many default blocks that execute when some aspect of the OSVERSIONINFOEX struct produces an ambiguous result. The technique I used was straight from the MSDN library: Getting The System Version, except that I coded it in assembly language (which is alot more fun).
The other routines are directly from MSDN, too,...so, there's nothing new here. The one thing that I did not incorporate into the code was the use of the CPUID instruction, which would undoubtedly have produced more reliable results. As Dave helpfully pointed out, there are numerous threads here on the MASM Forum that deal with this subject (and, detail the inherent problems).
Baltoro

dedndave

i am not disgruntled - lol

i was planning on using the function, as well as IsWOW64, to id newer OS's only
for example, i want to know whether it is a 32-bit or 64-bit version of win7
seeing as my routine is 32-bit code, IsWOW64 seems like an easy way to differentiate
also - i want to get the version (home premium, pro ultimate, and so on)
that info is easy to get from the registry, with some whack-a-mole case code   :bg

baltoro

 :dazzled: ...Well,...I'm disgruntled,... :dazzled:
Baltoro

evlncrn8

apparently the 'proper' method is to do a getprocaddress on kernel32 -> GetSystemWow64DirectoryA

if it exists, call it (with a sufficient buffer)

if it succeeds you're 64 bit

if not, then do get lasterror and it should be ERROR_CALL_NOT_IMPLEMENTED