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.
|
|
#include "headers.hxx"
#include "..\dspecup.hpp"
const wchar_t* RUNTIME_NAME = L"dspecup";
Popup popup(L"dspecup.lib", false);
DWORD DEFAULT_LOGGING_OPTIONS = Log::OUTPUT_TO_FILE | Log::OUTPUT_FUNCCALLS | Log::OUTPUT_LOGS | Log::OUTPUT_ERRORS | Log::OUTPUT_HEADER;
HINSTANCE hResourceModuleHandle = 0;
long total;
void stepIt(long arg, void *) { printf("\r" "\r%ld",total+=arg); }
void totalSteps(long arg, void *) { total=0; printf("\n%ld\n",arg); }
void PrintError(HRESULT hr, const String &message) { LOG_FUNCTION(PrintError);
if(hr==E_FAIL) { wprintf(L"%s\n",message.c_str()); } else { if(message.empty()) { wprintf(L"%s\n",GetErrorMessage(hr).c_str()); } else { wprintf(L"%s\n",message.c_str()); wprintf(L"%s\n",GetErrorMessage(hr).c_str()); } } }
int _cdecl main() { hResourceModuleHandle=::GetModuleHandle(NULL);
HRESULT hr; hr = ::CoInitialize(0); ASSERT(SUCCEEDED(hr));
PWSTR errorMsg=NULL; do { hr=UpgradeDisplaySpecifiers(false,&errorMsg,NULL,stepIt,totalSteps); BREAK_ON_FAILED_HRESULT(hr); } while(0);
CoUninitialize();
if(FAILED(hr)) { String error; if(errorMsg!=NULL) { error=errorMsg; CoTaskMemFree(errorMsg); } PrintError(hr,error); }
return 0; }
|