Thema: Prism Parameter Konsole

Einzelnen Beitrag anzeigen

Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Parameter Konsole

  Alt 8. Jun 2006, 10:58
wieso Überheblich, ich war mir nicht sicher ob es die Funktionen noch bei .NET gibt.
Habe "nur" Delphi6.

Wenn es Dir weiterhilft, ein kleiner Programmauszug
mit ParamCount und ParamStr:

Delphi-Quellcode:
  i:=1;
  // read Parameterlist
  While i <= ParamCount DO
   begin
     IF ParamStr(i) = '-sTHEN // serverString
       _server:=ParamStr(i+1)
      else
        IF ParamStr(i) = '-uTHEN // userName
          _username:=ParamStr(i+1)
        else
          IF ParamStr(i) = '-pTHEN // password
            _password:=ParamStr(i+1)
          else
            IF ParamStr(i) = '-eTHEN //programms to execute
              begin
                while (pos('-',ParamStr(i+1)) = 0) AND (i < ParamCount) DO
                  begin
                    _executable.Add(Paramstr(i+1));
                    inc(i);
                 end;
                i:=i-1;
              end
            else
              IF ParamStr(i) = '-epTHEN // parameter for executable
                begin
                  while (pos('-',ParamStr(i+1)) = 0) AND (i < ParamCount)DO
                    begin
                      _parameter.add(ParamStr(i+1));
                      inc(i);
                    end;
                  i:=i-1;
                end
              else
                IF ParamStr(i) = '-cpTHEN // crypted password
                  _password := decode(ParamStr(i+1))
                else
                  IF ParamStr(i) = '-cTHEN // encrypt password
                    begin
                       WriteLn('Password encrypted: '+encode(ParamStr(i+1)));
                       WriteLn('Press any key to continue ...');
                       ReadLn;
                    end
                  else
                    IF Paramstr(i) = '-tTHEN // timer
                      begin
                           IF check_number(ParamStr(i+1)) THEN
                             _timeout:=StrToInt(ParamStr(i+1))
                           ELSE
                             _timeout:=0;
                      end
                    else
                      IF Paramstr(i) = '-rTHEN // remove network drive
                        begin
                          if removeNetworkDrive(ParamStr(i+1)) then
                            begin
                              WriteLn('Networkdrive '+ParamStr(i+1)+' disconnected');
                              SetGlobalEnvironment('drive',' ');
                            end
                         else
                            RaiseLastOSError;
                        end
                      else
                        IF ParamStr(i) = '-hTHEN // prints help
                          begin
                            print_help;
                            i:=i-1;
                          end
                        else
                          IF ParamStr(i) = '-mTHEN // map network drive
                            begin
                              _mountonly:=true;
                              i:=i-1;
                            end;

     i:=i+2;
   end; // end while
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat