Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//
// RDCERT.CPP
// Created 4/19/2000 MadanA
//
// Sample program that install the remote desktop certificate.
// - no argment installs the certificate
// - /C clears the remote desktop certificate from store.
// - /? display this message.
//
#include "precomp.h"
//
// Main entry point
//
void __cdecl main( int argc, char **argv ) { BOOL bCleanup = FALSE; DWORD dwError = ERROR_SUCCESS;
CHAR achUserName[UNLEN + 1]; CHAR achComputerName[MAX_COMPUTERNAME_LENGTH + 1];
LPSTR szUserName = NULL; LPSTR szDomainName = NULL; LPSTR szComputerName = NULL;
DWORD dwNameLen;
//
// parse command line parameters.
//
if ( argc > 1 ) {
if( argc > 2 ) {
//
// we expect only one paramter.
//
goto Usage; }
if( argv[1][0] != '/') {
//
// option should start with /
//
goto Usage; }
switch ( argv[1][1] ) { case 'c': case 'C': bCleanup = TRUE; break;
case '?': default: goto Usage; } }
if( bCleanup ) { NmMakeCertCleanup( NULL, NULL, NULL, 0); goto Cleanup; }
dwNameLen = sizeof(achUserName); if( GetUserNameA((LPSTR)achUserName, &dwNameLen) ) { szUserName = (LPSTR)achUserName; } else { printf("GetUserNameA failed, %d.\n", GetLastError()); }
dwNameLen = sizeof(achComputerName); if( GetComputerNameA((LPSTR)achComputerName, &dwNameLen) ) { szComputerName = (LPSTR)achComputerName; } else { printf("GetComputerNameA failed, %d.\n", GetLastError()); }
dwError = NmMakeCert( szUserName, szDomainName, szComputerName, NULL, NULL, 0 );
if( dwError != 1 ) { printf("NmMakeCert failed, %d.\n", dwError); goto Cleanup;
}
dwError = ERROR_SUCCESS; goto Cleanup;
Usage:
printf("\n"); printf("rdcert [/c]\n"); printf("\n"); printf("Install/Uninstall Remote Desktop Certificate.\n"); printf("\t noargument - Install Remote Desktop Certificate.\n"); printf("\t /c - Uninstall already installed Remote Desktop Certificate.\n"); printf("\t /? - print this information."); printf("\n");
Cleanup:
if( dwError == ERROR_SUCCESS ) { printf("The command completed successfully.\n"); } return; }
|