IPB

Google Frontpage Forums Unattended CD/DVD Guide
 Forum Rules Unattended CD/DVD Guide Homepage · MSFN Forum Rules
28 Pages V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> Multi Manufacturer Pre-Activation
Bilou_Gateux
post Apr 13 2006, 01:40 AM
Post #21


Powered by Windows Embedded
*****

Group: Members
Posts: 752
Joined: 3-January 04
From: Underworld
Member No.: 11874
OS: XP Pro x86
Country Flag


QUOTE (Bezalel @ Mar 27 2006, 02:45 PM) *
Have you used this program during setup? The output looks more like WMI than SMBIOS.




Yes i've launched Getsys.exe @T39. Here the output:

QUOTE
MiTeC System Information Utility 10.2.0 - Copyright © 1997-2006 Michal Mutl
Type /? for options

SYSTEM OVERVIEW...OK
Machine: MACHINENAME
System : PC multiprocesseur ACPI
Model : Hewlett-Packard HP Compaq dc7600 Convertible Minitower
UpTime : 2 Minutes, 47 Seconds.
-------------------------------------------------------------------------------
CPU : 1 x Intel Pentium 4 - 2990 MHz
Cache: 16 KB L1 + 2048 KB L2 + 0 KB L3
-------------------------------------------------------------------------------
Mainboard: Hewlett-Packard 09F0h
Memory : 503 MB
-------------------------------------------------------------------------------
Operating system: Windows XP Professional [5.1.2600]Service pack : 2.0
Logged user : SYSTEM
-------------------------------------------------------------------------------
Display adapter: Intel® 82945G Express Chipset Family
Memory : 128 MB
-------------------------------------------------------------------------------
Fixed : Promise 1X2 Mirror/RAID - 76316 MB (SCSI)
C: (Primary NTFS - 76308 MB)
DVD : LITE-ON DVD SOHD-167T - 0 MB (ATAPI)
D:
-------------------------------------------------------------------------------
Keyboard:
-------------------------------------------------------------------------------
Mouse:
-------------------------------------------------------------------------------
Default printer:
-------------------------------------------------------------------------------




As you can see, @T39 we don't get full infos about PCI PnP Devices because they're not yet installed.
Go to the top of the page
 
+Quote Post
Bezalel
post Apr 26 2006, 07:23 PM
Post #22


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


I took a look a GetSys and decided not to use it because it merges the manufacturer and model into 1 long string. I've decided to use IBM's SMBIOS but need some help extracting the manufacturer's name from the output file.
Go to the top of the page
 
+Quote Post
Djé
post Apr 26 2006, 08:18 PM
Post #23


accent artist
***

Group: Members
Posts: 359
Joined: 10-January 06
From: your back
Member No.: 84897
Country Flag


Do you mean something like indy_dba's way in this post?

If you need further help, I would be glad to give a hand.
Go to the top of the page
 
+Quote Post
Bigbrit
post Apr 26 2006, 09:02 PM
Post #24


Hardware Tech.
**

Group: Members
Posts: 106
Joined: 11-May 05
Member No.: 55569
Country Flag


Manufacturer: Elitegroup Co.
Model: i-Buddie
456C6974 6567726F 75702043 6F2E2020 20202020 20202020 20202020 20202020

Hope this helps

welcome.gif
Go to the top of the page
 
+Quote Post
Bezalel
post Apr 26 2006, 09:05 PM
Post #25


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


QUOTE (Djé @ Apr 26 2006, 10:18 PM) *
Do you mean something like indy_dba's way in this post?

If you need further help, I would be glad to give a hand.


With indy_dba's method I would need to hardcode every manufacturer's name in my script or have every user modify their own scripts based on which computers they own. (Even worse the script might see a component manufacturer's name and miskake it for the system manufacturer.)

This is what I need my script to do:
Run SMBIOS (I think /G) and redirect the output to a text file
Search the output file for the "System Information" section
Search the "System Information" section for the "Manufacturer" line
Convert the manufacturer string into hex and replace the OEMBIOS files with files named with the hex string.

My script would not have to be modified when you by another PC from a a new manufacturer all you have to do is collect the OEMBIOS files from your new computer rename them with the manufacturer's hex string (I've already written these scripts) and drop the files onto your CD.
Go to the top of the page
 
+Quote Post
Bezalel
post Apr 26 2006, 09:16 PM
Post #26


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


QUOTE (Bigbrit @ Apr 26 2006, 11:02 PM) *
Manufacturer: Elitegroup Co.
Model: i-Buddie
456C6974 6567726F 75702043 6F2E2020 20202020 20202020 20202020 20202020

Hope this helps

welcome.gif


I don't thing this unit uses preactivation sad.gif Also notice that the manufacturers name has 18 spaces after it, this is the reason I converted the string to hex.
Go to the top of the page
 
+Quote Post
Bilou_Gateux
post Apr 27 2006, 07:10 AM
Post #27


Powered by Windows Embedded
*****

Group: Members
Posts: 752
Joined: 3-January 04
From: Underworld
Member No.: 11874
OS: XP Pro x86
Country Flag


QUOTE (Bezalel @ Apr 27 2006, 04:05 AM) *
This is what I need my script to do:
Run SMBIOS (I think /G) and redirect the output to a text file
Search the output file for the "System Information" section
Search the "System Information" section for the "Manufacturer" line
Convert the manufacturer string into hex and replace the OEMBIOS files with files named with the hex string.

My script would not have to be modified when you by another PC from a a new manufacturer all you have to do is collect the OEMBIOS files from your new computer rename them with the manufacturer's hex string (I've already written these scripts) and drop the files onto your CD.


QUOTE
@for /f "tokens=1* delims=: " %%i in ('smbiosd /t:1 ^|findstr "Manufacturer"') do @set "Manufacturer=%%j" &@call echo/%Manufacturer%


Previous script based from an original script by Yzöwl
for converting manufacturer string into hex with batch script, ask Yzöwl batch expert. If you use vbs or wsh, you could not run the script @T39

This post has been edited by Bilou_Gateux: Apr 27 2006, 07:47 AM
Go to the top of the page
 
+Quote Post
Djé
post Apr 27 2006, 10:58 AM
Post #28


accent artist
***

Group: Members
Posts: 359
Joined: 10-January 06
From: your back
Member No.: 84897
Country Flag


May I suggest the attached script for including conversion to hex...

It may not be very elegant, but it should work at any time as soon as CMD.EXE works (@T39,...).

EDIT3 blushing.gif : repaired the broken handling of spaces. Simplified and commented the code.

optimized version --> the Hex conversion works with some of the 7-bits printable ASCII characters: 32 (x20: <space>) to 126(x7E: ~).
Many many many problems with the double quote (") and the CMD special characters (&<|>^). Yappari.

Hex codes grouped by 4, separated with spaces.

This post has been edited by Djé: Apr 27 2006, 11:03 PM
Attached File(s)
Attached File  ManufacturerHex.cmd ( 4.12K ) Number of downloads: 206
 
Go to the top of the page
 
+Quote Post
Bezalel
post Apr 27 2006, 02:44 PM
Post #29


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


I'n using this line of code
CODE
for /F "tokens=1* delims='" %%a in ('smbios.exe /G ^|findstr "Manufacturer"') do converttohex.bat "%%b"

Currently it is calling converttohex each time it encounters the string "Manufacturer". How can I make only call converttohex for the first occurance.
Go to the top of the page
 
+Quote Post
Djé
post Apr 27 2006, 03:16 PM
Post #30


accent artist
***

Group: Members
Posts: 359
Joined: 10-January 06
From: your back
Member No.: 84897
Country Flag


QUOTE (Bezalel @ Apr 27 2006, 09:44 PM) *
Currently it is calling converttohex each time it encounters the string "Manufacturer". How can I make only call converttohex for the first occurance.

If you would use the smbiosd linked to by indy_dba, and use the '/t:1' switch as shown by bilou, I think you would have only ONE occurance of "Manufacturer".
QUOTE (Bezalel @ Apr 27 2006, 04:05 AM) *
Search the output file for the "System Information" section
Search the "System Information" section for the "Manufacturer" line
the '/t:1' switch perform your 1st point, and the 'FOR' loop the 2nd newwink.gif


However, if you want to stick to IBM's SMBIOS which I don't know and may not have the same switch, you can exit the loop after the first occurance by doing it this way:
CODE
for /F "tokens=1* delims='" %%a in ('smbios.exe /G ^|findstr "Manufacturer"') do (
converttohex.bat "%%b"
GOTO ENDFOR
)
:ENDFOR


This post has been edited by Djé: Apr 27 2006, 03:29 PM
Go to the top of the page
 
+Quote Post
Bezalel
post Apr 27 2006, 05:38 PM
Post #31


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


I think I have a working set of files. Extract these files to your hard drive and run GetOEMFiles.bat then copy the files to the $OEM$ directory of your CD. I haven't tested these yet but it looks good.

You don't have to use my cmdlies.txt file but you need to run RestoreOEMFiles.bat before WFP starts protecting the files (I think T-9)

If anyone has a Manufacturer's string that contains a ' or a " (single quote or double quote) or anyone else for that matter let me know if it works.

Attachment Removed - See Post #34

This post has been edited by Bezalel: May 1 2006, 12:13 AM
Go to the top of the page
 
+Quote Post
Bilou_Gateux
post Apr 28 2006, 11:33 AM
Post #32


Powered by Windows Embedded
*****

Group: Members
Posts: 752
Joined: 3-January 04
From: Underworld
Member No.: 11874
OS: XP Pro x86
Country Flag


Mitec GetSysInfo.exe will not be available for one year.

Instead of using IBM smbios tool, why not using:
Compname.exe was written using the excellent Mitec SysInfo by Michal Mutl (see www.mitec.d2.cz) and Indy.

CODE
@for /F "tokens=2* delims=: " %%i in ('compname /s ^|findstr /L /c:"System    manufacturer"') do @set Manufacturer=%%j &@call manufacturerhex "%%j"


EDIT: previous script modified to trim any leading/trailing spaces &call Djé script.

Djé manufacturerhex.cmd script modified to take manufacturer string as 1st parameter
QUOTE
FOR /F "tokens=1* delims=: " %%i IN ('smbiosd /t:1 ^|findstr "Manufacturer"') DO SET "TEST=%%j"
SET TEST=%1
SET TEST=%TEST:"=%

echo Manufacturer: %TEST%


This post has been edited by Bilou_Gateux: Jun 12 2006, 08:59 AM
Go to the top of the page
 
+Quote Post
Bezalel
post Apr 28 2006, 12:32 PM
Post #33


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


QUOTE (Bilou_Gateux @ Apr 28 2006, 01:33 PM) *
Instead of using IBM smbios tool, why not using:
Compname.exe was written using the excellent Mitec SysInfo by Michal Mutl (see www.mitec.d2.cz) and Indy.

CODE
@for /f "tokens=1* delims=:" %%i in ('compname /s ^|findstr /L /c:"System    manufacturer"') do @set Manufacturer=%%j


Because I didn't know about this program. At this stage I'm going to stay with smbios2.exe because it is a well known product and I can freely distribute it.

If someone writes an executable thet will output just the Manufacturer's String with no additional formatting I might change my script to use it.

Feel free to use whatever method you like in your own script but please don't use this thread to distribute these changes yet (unless my code is broken). There are a number of enhancements (OEMLOGO.BMP, OEMINFO.INI, Signature checking, Verifying SLP Status, SFX Support) that I want to add and don't want this project to be pulled in too many directions
Go to the top of the page
 
+Quote Post
Bezalel
post May 1 2006, 12:08 AM
Post #34


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


I removed the attachment from post 31 bacause it failed on my PC. Apparently .VBS is not associated with wscript at T-12. My next test is to chance the line
CODE
setEnvVar.vbs "%%b"

to
CODE
wscript setEnvVar.vbs "%%b"

and see what happens. If this works I will repost the files.
Go to the top of the page
 
+Quote Post
mittern8
post May 20 2006, 12:57 AM
Post #35





Group: Members
Posts: 8
Joined: 20-May 06
From: Intestine City / YerMoney
Member No.: 96808
Country Flag


Hello and greetings from YerMoney!
This is my first time posting on this board, so let me start with telling you, that I'm deeply impressed by the threads I read tonite.
I focused mainly on the 'works' of Bezalel, because I'm trying to figure out, which part of the DMI-table is checked to see whether the installed Windows is pre-activated or not.

My first guess was the "Manufacturer"-string, since I was able to install a pre-activated (SLP) OEM Windows on a different mainboard after I patched the "Manufacturer"-string in this boards DMI-table.
Well, this worked like a charme!

Now it is interesting to see that you're trying to get rid of the problem to keep the pre-activation the other way round - by exchanging the OEMBIOS-files on the setup media (as far as I understand this thread).
Anyway - patching the DMI-table or collecting a pool of different oembios-files - I greatly apreciate the fact, that this thread gives a collection of different manufacturer strings!
So here is my contribution
QUOTE
Manufacturer: MEDIONPC
Model: AWRDACPI
4D454449 4F4E5043


Oh, and by the way, a very informative tool is available from german compu-mag c't, named ctdmi.exe and bundled in ctbios15.zip - unfortunately only available in german.
Go to the top of the page
 
+Quote Post
Bezalel
post May 23 2006, 06:14 PM
Post #36


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


QUOTE (mittern8 @ May 20 2006, 01:57 AM) *
I'm trying to figure out, which part of the DMI-table is checked to see whether the installed Windows is pre-activated or not.


SLP Activation doesn't check the DMI tables, it searches through a specific memory address range looking for a particular string. The OEMs provide the address range and string to MS who encrypt them and provide the OEMs with an OEMBIOS file set.
Go to the top of the page
 
+Quote Post
mittern8
post May 23 2006, 10:40 PM
Post #37





Group: Members
Posts: 8
Joined: 20-May 06
From: Intestine City / YerMoney
Member No.: 96808
Country Flag


I'll reply to that more detailed later on (it's early morning over here in Germany and I want to check a few things first).
But ...

QUOTE
SLP Activation doesn't check the DMI tables, it searches through a specific memory address range looking for a particular string.


Even if SLP activation doesn't check the DMI tables itself, the manufacturer string for sure derives from the DMI table data.
Otherwise I wouldn't have been successfull in patching the string in the DMI table and keep the pre-activation working on atotally different hardware leaving OEMBIOS files untouched.
In my opinion this is a more than sufficient practical proof.

To verify this (theoretically) we have to ask how and from where the WMI does collect it's infos.

For example:
With the function you use, you retrieve the "Manufacturer-" and the "Model-String".
This "Model-String" is non existent in the DMI tables, but instead I discovered it in the ACPI APIC table ("OEM TABLE ID") - where you (vice versa) won't find a "Manufacturer-String".
Even though the "Model-String" is (yet) of no interest for the pre-activation (but it will become important in concern of Trusted Computing), it leads me to the conclusion that the WMI data is collected from different sources (DMI table, ACPI APIC table and so on) and compiled to the WMI database.
So my intension is to find out what data sources should be examined and how the chances are to modify them.

Some thoughts on "Trusted Computing":


This post has been edited by mittern8: May 23 2006, 10:43 PM
Go to the top of the page
 
+Quote Post
Bezalel
post May 23 2006, 11:44 PM
Post #38


Senior Member
****

Group: Members
Posts: 588
Joined: 11-October 05
Member No.: 76348
OS: XP Pro x86
Country Flag


Maybe I should clarify my last post. SLP doesn't browse the DMI or SMBIOS tables for a specific entry, instead it searches for the sting within a specific range. The manufacturer may choose to search from 000E:4000 to 000F:FFFF (the entire BIOS) to allow for flexibility in BIOS design and allow them to place the string anywhere in their BIOS. They may also choose to use their name as the search string.

WMI uses multiple sources for its data. I think the manufacturer and model originate from SMBIOS.
Go to the top of the page
 
+Quote Post
mittern8
post May 23 2006, 11:57 PM
Post #39





Group: Members
Posts: 8
Joined: 20-May 06
From: Intestine City / YerMoney
Member No.: 96808
Country Flag


QUOTE (Bezalel @ May 24 2006, 07:44 AM) *
Maybe I should clarify my last post. SLP doesn't browse the DMI or SMBIOS tables for a specific entry, instead it searches for the sting within a specific range. The manufacturer may choose to search from 000E:4000 to 000F:FFFF (the entire BIOS) to allow for flexibility in BIOS design and allow them to place the string anywhere in their BIOS. They may also choose to use their name as the search string.

WMI uses multiple sources for its data. I think the manufacturer and model originate from SMBIOS.

Ja, okay!
So, it seems quite clear that SLP is using a different mechanism as WMI does, right?

P.S.:
I'm very keen to see how U solve the problem with the OEMBIOS files!
And, BTW, just read an articel on Windows Vista and BitLocker Drive Encryption no.gif

This post has been edited by mittern8: May 24 2006, 12:02 AM
Go to the top of the page
 
+Quote Post
RogueSpear
post May 24 2006, 06:04 AM
Post #40


OS: SimplyMEPIS
Group Icon

Group: Normal Sponsors
Posts: 1529
Joined: 18-September 04
From: Buffalo, NY
Member No.: 31429
OS: none
Country Flag


QUOTE (Bezalel @ May 1 2006, 01:08 AM) *
I removed the attachment from post 31 bacause it failed on my PC. Apparently .VBS is not associated with wscript at T-12. My next test is to chance the line


You can run .vbs files from cmdlines.txt just fine, however you're limited to cscript.exe.

On another note, would it be beneficial to make a repository of the BIOS files for various makes and models?
Go to the top of the page
 
+Quote Post

Google Frontpage Forums Unattended CD/DVD Guide

28 Pages V  < 1 2 3 4 > » 
Reply to this topicStart new topic
2 User(s) are reading this topic (2 Guests and 0 Anonymous Users)
0 Members:

 




Lo-Fi Version Time is now: 21st November 2009 - 09:59 PM
All trademarks mentioned on this page are the property of their respective owners
MSFN is not affiliated with Microsoft
Copyright © 2001-2009 msfn.org
Privacy Policy