internal class CpUpdatePlugIn : IPlugIn
{
public override string Name
{
get { return "recover-cp"; }
}
public override string Options
{
get { return "file [devkit ...]"; }
}
public override bool IsValidArgCount(int argc)
{
return argc >= 1;
}
public override string HelpString
{
get { return "Updates the firmware of the DevKit with the cpupdater.bin file specified."; }
}
public override bool Hidden
{
get { return true; }
}
public override bool Execute(List<string> args)
{
ORTMAPI tm = null;
API.Instance(out tm);
string path = Path.GetFullPath(args[0]);
args.RemoveAt(0);
bool success = false;
List<ITarget> targets = TargetListHelper.TargetList(tm, args);
foreach (ITarget tgt in targets)
{
try
{
using (CtrlCHandler handler = CtrlCHandler.StandardCtrlCHandler(tgt))
using (RefCountedConnection rc = new RefCountedConnection(tgt))
{
ITarget23 tgt23 = (ITarget23)tgt;
CpUpdateProgressHandler ph = new CpUpdateProgressHandler(tm, tgt);
tgt23.UpdateCPFirmware(path);
success = ph.Success || success;
}
}
catch (COMException e)
{
ErrorHelper.PrintError(tm, e);
}
}
return success;
}
}
Copyright © 2024, NextGenUpdate.
All Rights Reserved.