예제 #1
0
 public bool SvCommand(FnSvCmd fnSvCmd, string[] cmds, uint cmdidx, string prompt, ref f9sv.ReportHandler handler)
 {
     handler.UserData_ = IntPtr.Add(handler.UserData_, 1);
     if (cmdidx >= cmds.Length)
     {
         Console.WriteLine($"{prompt}: require 'treePath'");
         return(false);
     }
     f9sv.SeedName seedName = new f9sv.SeedName();
     seedName.TreePath_ = cmds[cmdidx++];
     if (cmdidx >= cmds.Length)
     {
         Console.WriteLine($"{prompt}: require 'key'");
         return(false);
     }
     seedName.SeedKey_ = cmds[cmdidx++];
     if (seedName.SeedKey_ == "\\t")
     {
         seedName.SeedKey_ = "\t";
     }
     if (cmdidx < cmds.Length)
     {
         seedName.TabName_ = cmds[cmdidx];
     }
     f9sv.ResultCode res = fnSvCmd(this, ref seedName, handler);
     Console.WriteLine($"---------- {prompt}: UserData={handler.UserData_}, return={SvResultCodeStr(res)}");
     Console.WriteLine($"treePath=[{seedName.TreePath_}], seedKey=[{seedName.SeedKey_}], tab=[{seedName.TabName_}]");
     Console.WriteLine("--------------------");
     return(true);
 }
예제 #2
0
 // ---------------------------------------------------------------------
 static string SvResultCodeStr(f9sv.ResultCode res)
 {
     return($"{(int)res}:{res}:{f9sv.Api.GetSvResultMessage(res)}");
 }