mirror of
https://github.com/Neo-Desktop/WindowsXPKg
synced 2024-12-05 04:01:00 +02:00
New keys.json format for CIDs, new way to display CIDs, Found actual valid CIDs
This commit is contained in:
parent
5fc8603bcb
commit
cecd7555c6
270
keys.json
270
keys.json
@ -1,160 +1,318 @@
|
|||||||
{
|
{
|
||||||
"Products": {
|
"Products": {
|
||||||
"Windows CE Platform Builder 3": {
|
"Windows CE Platform Builder 3": {
|
||||||
"BINK": ["00", "01", "0E", "0D", "0F"]
|
"BINK": {
|
||||||
|
"00": {},
|
||||||
|
"01": {},
|
||||||
|
"0E": {},
|
||||||
|
"0D": {},
|
||||||
|
"0F": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows CE .Net Platform Builder 4": {
|
"Windows CE .Net Platform Builder 4": {
|
||||||
"BINK": ["00", "01"]
|
"BINK": {
|
||||||
|
"00": {},
|
||||||
|
"01": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows 98 (all)": {
|
"Windows 98 (all)": {
|
||||||
"BINK": ["02","03"]
|
"BINK": {
|
||||||
|
"02": {},
|
||||||
|
"03": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2000": {
|
"Office 2000": {
|
||||||
"BINK": ["04", "05"]
|
"BINK": {
|
||||||
|
"04": {},
|
||||||
|
"05": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Internet Security and Acceleration (ISA) Server 2004": {
|
"Internet Security and Acceleration (ISA) Server 2004": {
|
||||||
"BINK": ["06", "07"]
|
"BINK": {
|
||||||
|
"06": {},
|
||||||
|
"07": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"PLUS! for Windows XP": {
|
"PLUS! for Windows XP": {
|
||||||
"BINK": ["08", "09"]
|
"BINK": {
|
||||||
|
"08": {},
|
||||||
|
"09": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows 2000 Server (all)": {
|
"Windows 2000 Server (all)": {
|
||||||
"BINK": ["0A", "13"]
|
"BINK": {
|
||||||
|
"0A": {},
|
||||||
|
"13": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office Communicator 2007": {
|
"Office Communicator 2007": {
|
||||||
"BINK": ["0C", "0D"]
|
"BINK": {
|
||||||
|
"0C": {},
|
||||||
|
"0D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Embedded POSReady 2009": {
|
"Windows Embedded POSReady 2009": {
|
||||||
"BINK": ["0D", "0D"]
|
"BINK": {
|
||||||
|
"0D": {},
|
||||||
|
"0D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows CE .Net Platform Builder 5": {
|
"Windows CE .Net Platform Builder 5": {
|
||||||
"BINK": ["0D", "0D"]
|
"BINK": {
|
||||||
|
"0D": {},
|
||||||
|
"0D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Commerce Server 2002": {
|
"Commerce Server 2002": {
|
||||||
"BINK": ["0E", "0F"]
|
"BINK": {
|
||||||
|
"0E": {},
|
||||||
|
"0F": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows 2000 Professional": {
|
"Windows 2000 Professional": {
|
||||||
"BINK": ["12", "13"]
|
"BINK": {
|
||||||
|
"12": {},
|
||||||
|
"13": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office for Mac 2004 / 2008": {
|
"Office for Mac 2004 / 2008": {
|
||||||
"BINK": ["18", "19"]
|
"BINK": {
|
||||||
|
"18": {},
|
||||||
|
"19": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows ME": {
|
"Windows ME": {
|
||||||
"BINK": ["1C", "1D"]
|
"BINK": {
|
||||||
|
"1C": {},
|
||||||
|
"1D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office XP Applications": {
|
"Office XP Applications": {
|
||||||
"BINK": ["20", "21"]
|
"BINK": {
|
||||||
|
"20": {},
|
||||||
|
"21": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Works Suite 2003 and 2004": {
|
"Works Suite 2003 and 2004": {
|
||||||
"BINK": ["20", "21"]
|
"BINK": {
|
||||||
|
"20": {},
|
||||||
|
"21": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office XP": {
|
"Office XP": {
|
||||||
"BINK": ["22", "23"]
|
"BINK": {
|
||||||
|
"22": {},
|
||||||
|
"23": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Visual Studio .Net / .Net 2003": {
|
"Visual Studio .Net / .Net 2003": {
|
||||||
"BINK": ["24", "25"]
|
"BINK": {
|
||||||
|
"24": {},
|
||||||
|
"25": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Professional Evaluation": {
|
"Windows XP Professional Evaluation": {
|
||||||
"BINK": ["28", "29"]
|
"BINK": {
|
||||||
|
"28": {},
|
||||||
|
"29": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Home": {
|
"Windows XP Home": {
|
||||||
"BINK": ["2A", "2B"]
|
"BINK": {
|
||||||
|
"2A": {},
|
||||||
|
"2B": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Pro": {
|
"Windows XP Pro": {
|
||||||
"BINK": ["2C", "2D"],
|
"BINK": {
|
||||||
"CID": {
|
"2C": {
|
||||||
"OEM": "90, 113, 119",
|
"Retail": [[5, 90], [95, 99], [114, 116], [311, 334], 336, [370, 385], [755, 779], [785, 789]],
|
||||||
"Retail": "[5, 90] U [95, 100] U [114, 116] U [120, 269] U [271, 366] U [370 U 385] U [400, 665] U [667, 799] U [803, 979]",
|
"TablePC": [111, 112, [337, 369]]
|
||||||
"TablePC": "111, 112, [337, 369]"
|
},
|
||||||
|
"2D": {
|
||||||
|
"OEM": [[100, 110], 114, [120, 269], [271, 336], [370, 665], [667, 754], [780, 799], [803, 979]],
|
||||||
|
"OEM-SLP": [90, 113, 119]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Pro IA-64": {
|
"Windows XP Pro IA-64": {
|
||||||
"BINK": ["2C", "2D"]
|
"BINK": {
|
||||||
|
"2C": {},
|
||||||
|
"2D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Pro VLK": {
|
"Windows XP Pro VLK": {
|
||||||
"BINK": ["2E", "2F"]
|
"BINK": {
|
||||||
|
"2E": {},
|
||||||
|
"2F": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Fundamentals for Legacy PCs": {
|
"Windows XP Fundamentals for Legacy PCs": {
|
||||||
"BINK": ["2E", "2F"]
|
"BINK": {
|
||||||
|
"2E": {},
|
||||||
|
"2F": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Professional K": {
|
"Windows XP Professional K": {
|
||||||
"BINK": ["30", "31"]
|
"BINK": {
|
||||||
|
"30": {},
|
||||||
|
"31": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Starter Edition": {
|
"Windows XP Starter Edition": {
|
||||||
"BINK": ["32", "33"]
|
"BINK": {
|
||||||
|
"32": {},
|
||||||
|
"33": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Longhorn (6.0.3683.0 -> 6.0.4029.0)": {
|
"Windows Longhorn (6.0.3683.0 -> 6.0.4029.0)": {
|
||||||
"BINK": ["40", "41"]
|
"BINK": {
|
||||||
|
"40": {},
|
||||||
|
"41": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Halo: Combat Evolved": {
|
"Halo: Combat Evolved": {
|
||||||
"BINK": ["50", "51"]
|
"BINK": {
|
||||||
|
"50": {},
|
||||||
|
"51": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Halo: Custom Edition": {
|
"Halo: Custom Edition": {
|
||||||
"BINK": ["50", "51"]
|
"BINK": {
|
||||||
|
"50": {},
|
||||||
|
"51": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Visual Studio 2005": {
|
"Visual Studio 2005": {
|
||||||
"BINK": ["52", "53"]
|
"BINK": {
|
||||||
|
"52": {},
|
||||||
|
"53": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Plus! Digital Media Edition for Windows XP": {
|
"Plus! Digital Media Edition for Windows XP": {
|
||||||
"BINK": ["52", "53"]
|
"BINK": {
|
||||||
|
"52": {},
|
||||||
|
"53": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Longhorn (6.0.4033.0)": {
|
"Windows Longhorn (6.0.4033.0)": {
|
||||||
"BINK": ["54", "55"]
|
"BINK": {
|
||||||
|
"54": {},
|
||||||
|
"55": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Server 2003": {
|
"Windows Server 2003": {
|
||||||
"BINK": ["54", "55", "58", "59"]
|
"BINK": {
|
||||||
|
"54": {},
|
||||||
|
"55": {},
|
||||||
|
"58": {},
|
||||||
|
"59": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Server 2003 VLK": {
|
"Windows Server 2003 VLK": {
|
||||||
"BINK": ["5A", "5B"]
|
"BINK": {
|
||||||
|
"5A": {},
|
||||||
|
"5B": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Pro 64 Bit Edition VLK": {
|
"Windows XP Pro 64 Bit Edition VLK": {
|
||||||
"BINK": ["64", "65"]
|
"BINK": {
|
||||||
|
"64": {},
|
||||||
|
"65": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows XP Pro 64 Bit Edition": {
|
"Windows XP Pro 64 Bit Edition": {
|
||||||
"BINK": ["66", "67"],
|
"BINK": {
|
||||||
"CID": {
|
"66": {
|
||||||
"Retail": "[306, 370]",
|
"Retail": [[306, 370]],
|
||||||
"TablePC": "[371, 410]"
|
"TablePC": [[371, 410]]
|
||||||
|
},
|
||||||
|
"67": {
|
||||||
|
"OEM": [[5, 118]]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Windows Server 2003 64 Bit": {
|
"Windows Server 2003 64 Bit": {
|
||||||
"BINK": ["68", "69", "6C", "6D"]
|
"BINK": {
|
||||||
|
"68": {},
|
||||||
|
"69": {},
|
||||||
|
"6C": {},
|
||||||
|
"6D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Server 2003 64 Bit VLK": {
|
"Windows Server 2003 64 Bit VLK": {
|
||||||
"BINK": ["68", "69", "6C", "6D"]
|
"BINK": {
|
||||||
|
"68": {},
|
||||||
|
"69": {},
|
||||||
|
"6C": {},
|
||||||
|
"6D": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2003 Applications": {
|
"Office 2003 Applications": {
|
||||||
"BINK": ["6E", "6F"]
|
"BINK": {
|
||||||
|
"6E": {},
|
||||||
|
"6F": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2003 Small Business": {
|
"Office 2003 Small Business": {
|
||||||
"BINK": ["70", "71"]
|
"BINK": {
|
||||||
|
"70": {},
|
||||||
|
"71": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2003 Student and Teacher": {
|
"Office 2003 Student and Teacher": {
|
||||||
"BINK": ["70", "71"]
|
"BINK": {
|
||||||
|
"70": {},
|
||||||
|
"71": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2003 Professional": {
|
"Office 2003 Professional": {
|
||||||
"BINK": ["72", "73"]
|
"BINK": {
|
||||||
|
"72": {},
|
||||||
|
"73": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Windows Longhorn (6.0.4039.0 -> Pre PIDGENX)": {
|
"Windows Longhorn (6.0.4039.0 -> Pre PIDGENX)": {
|
||||||
"BINK": ["74", "75"]
|
"BINK": {
|
||||||
|
"74": {},
|
||||||
|
"75": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Identity Lifecycle Manager 2007": {
|
"Identity Lifecycle Manager 2007": {
|
||||||
"BINK": ["78", "79"]
|
"BINK": {
|
||||||
|
"78": {},
|
||||||
|
"79": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Visual Studio 2008": {
|
"Visual Studio 2008": {
|
||||||
"BINK": ["78", "79"]
|
"BINK": {
|
||||||
|
"78": {},
|
||||||
|
"79": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2007 Applications": {
|
"Office 2007 Applications": {
|
||||||
"BINK": ["7E", "7F"]
|
"BINK": {
|
||||||
|
"7E": {},
|
||||||
|
"7F": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2007 Basic / Small Business": {
|
"Office 2007 Basic / Small Business": {
|
||||||
"BINK": ["80", "81"]
|
"BINK": {
|
||||||
|
"80": {},
|
||||||
|
"81": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2007 Standard / Professional / Ultimate / Enterprise": {
|
"Office 2007 Standard / Professional / Ultimate / Enterprise": {
|
||||||
"BINK": ["82", "83"]
|
"BINK": {
|
||||||
|
"82": {},
|
||||||
|
"83": {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"Office 2007 Home & Student": {
|
"Office 2007 Home & Student": {
|
||||||
"BINK": ["88", "89"]
|
"BINK": {
|
||||||
|
"88": {},
|
||||||
|
"89": {}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"BINK": {
|
"BINK": {
|
||||||
|
51
src/cli.cpp
51
src/cli.cpp
@ -65,7 +65,7 @@ void CLI::showHelp(char *argv[]) {
|
|||||||
fmt::print("\t-m --mode\tproduct family to activate.\n\t\t\tvalid options are \"WINDOWS\", \"OFFICEXP\", \"OFFICE2K3\", \"OFFICE2K7\" or \"PLUSDME\"\n\t\t\t(defaults to \"WINDOWS\")\n");
|
fmt::print("\t-m --mode\tproduct family to activate.\n\t\t\tvalid options are \"WINDOWS\", \"OFFICEXP\", \"OFFICE2K3\", \"OFFICE2K7\" or \"PLUSDME\"\n\t\t\t(defaults to \"WINDOWS\")\n");
|
||||||
fmt::print("\t-p --productid\tthe product ID of the Program to activate. only required for Office 2K3 and Office 2K7 programs\n");
|
fmt::print("\t-p --productid\tthe product ID of the Program to activate. only required for Office 2K3 and Office 2K7 programs\n");
|
||||||
fmt::print("\t-b --binkid\tspecify which BINK identifier to load (defaults to 2E)\n");
|
fmt::print("\t-b --binkid\tspecify which BINK identifier to load (defaults to 2E)\n");
|
||||||
fmt::print("\t-l --list\tshow which products/binks can be loaded\n");
|
fmt::print("\t-l --list\tshow which products/binks (and their associated channel ids) can be loaded\n");
|
||||||
fmt::print("\t-c --channelid\tspecify which Channel Identifier to use (defaults to 640)\n");
|
fmt::print("\t-c --channelid\tspecify which Channel Identifier to use (defaults to 640)\n");
|
||||||
fmt::print("\t-s --serial\tspecifies a serial to use in the product ID (defaults to random, BINK1998 only)\n");
|
fmt::print("\t-s --serial\tspecifies a serial to use in the product ID (defaults to random, BINK1998 only)\n");
|
||||||
fmt::print("\t-u --upgrade\tspecifies the Product Key will be an \"Upgrade\" version\n");
|
fmt::print("\t-u --upgrade\tspecifies the Product Key will be an \"Upgrade\" version\n");
|
||||||
@ -253,17 +253,52 @@ int CLI::validateCommandLine(Options* options, char *argv[], json *keys) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (options->list) {
|
if (options->list) {
|
||||||
|
//List each product
|
||||||
for (auto el : (*keys)["Products"].items()) {
|
for (auto el : (*keys)["Products"].items()) {
|
||||||
int id;
|
std::cout << el.key() << ": [";
|
||||||
sscanf((el.value()["BINK"][0]).get<std::string>().c_str(), "%x", &id);
|
|
||||||
std::cout << el.key() << ": " << el.value()["BINK"] << std::endl;
|
//List each bink
|
||||||
if (!el.value()["CID"].is_null() && !el.value()["CID"].empty()) {
|
bool f = false;
|
||||||
std::cout << "\t" << "Valid Channel IDs:" << std::endl;
|
for (auto bink : el.value()["BINK"].items()) {
|
||||||
for (auto range : el.value()["CID"].items()) {
|
if (bink.value().empty()) { //If no CIDs are associated
|
||||||
std::cout << "\t\t" << range.key() << ": " << range.value() << std::endl;
|
if (f) { std::cout << ", "; } else { f = true; }
|
||||||
|
std::cout << bink.key();
|
||||||
|
} else { //If CIDs are associated
|
||||||
|
size_t padding = el.key().length() + 2;
|
||||||
|
if (!f) { std::cout << std::endl;
|
||||||
|
for (int i = 0; i < padding; i++) {
|
||||||
|
std::cout << " ";
|
||||||
}
|
}
|
||||||
|
f = true;
|
||||||
|
}
|
||||||
|
std::cout << " ";
|
||||||
|
|
||||||
|
std::cout << bink.key() << ":" << std::endl;
|
||||||
|
|
||||||
|
//List each CID
|
||||||
|
for (auto cids : bink.value().items()) {
|
||||||
|
for (int i = 0; i < padding + 5; i++) {
|
||||||
|
std::cout << " ";
|
||||||
|
}
|
||||||
|
|
||||||
|
std::cout << cids.key() << ": ";
|
||||||
|
|
||||||
|
//List each CID's values
|
||||||
|
bool ff = false;
|
||||||
|
for (auto cid : cids.value().items()) {
|
||||||
|
if (ff) { std::cout << ", "; } else { ff = true; }
|
||||||
|
std::cout << cid.value();
|
||||||
|
}
|
||||||
|
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < padding; i++) {
|
||||||
|
std::cout << " ";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
std::cout << "]" << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt::print("\n\n");
|
fmt::print("\n\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user