#define _WIN32_WINNT 0x0500 #define WIN32 #define NDEBUG #define _CONSOLE #include #include #include "windows.h" char message[80]; char title[20]; void getMessage(int messageId) { if (messageId == 0) { strcpy(title, "Failure."); strcpy(message, "Invalid code."); } else { strcpy(title, "Success."); strcpy(message, "Thank you for activating."); } } void success() { getMessage(1); MessageBox(GetConsoleWindow(), message, title, MB_OK); // Persist activation info here } void failure() { getMessage(0); MessageBox(GetConsoleWindow(), message, title, MB_OK); } bool checkCode(char serial[], char userCode[]) { char actCode[5]; actCode[0] = serial[2]; actCode[1] = serial[0]; actCode[2] = serial[3]; actCode[3] = serial[1]; actCode[4] = 0; return strcmp(userCode, actCode) == 0; } void main(void) { // Get serial char serial[5]; printf("Enter your 4 character serial code: "); fgets(serial, sizeof(serial), stdin); // Create activation code // Read activation code char userCode[50]; printf("Enter your 4 character activation code: "); scanf("%s", userCode); userCode[4] = 0; // Determine success if (checkCode(serial, userCode)) { success(); } else { failure(); } }