in BusTools/PwmTestTool/main.cpp [281:322]
int main (Platform::Array<Platform::String^>^ args)
{
unsigned int optind = 1;
if (optind >= args->Length) {
std::wcerr << L"Missing required command line parameter\n\n";
PrintUsage(args->get(0)->Data());
return 1;
}
PCWSTR arg = args->get(optind)->Data();
if (!_wcsicmp(arg, L"-h") || !_wcsicmp(arg, L"/h") ||
!_wcsicmp(arg, L"-?") || !_wcsicmp(arg, L"/?")) {
PrintUsage(args->get(0)->Data());
return 0;
}
if (!_wcsicmp(arg, L"-l") || !_wcsicmp(arg, L"-list")) {
ListPwmControllers();
return 0;
}
String^ friendlyName;
if (optind < args->Length) {
friendlyName = args->get(optind++);
}
try {
auto device = MakeDevice(friendlyName);
std::wcout << L" Type 'help' for a list of commands\n";
ShowPrompt(device);
} catch (const wexception& ex) {
std::wcerr << L"Error: " << ex.wwhat() << L"\n";
return 1;
} catch (Platform::Exception^ ex) {
std::wcerr << L"Error: " << ex->Message->Data() << L"\n";
return 1;
}
return 0;
}