Thema: Delphi Delphi Code Umbauen

Einzelnen Beitrag anzeigen

msickel

Registriert seit: 14. Mai 2005
108 Beiträge
 
Delphi 2005 Professional
 
#1

Delphi Code Umbauen

  Alt 3. Mai 2008, 18:50
Hallo

Ich habe da mal ne Frage, im Moment habe ich folgenden Code..
Delphi-Quellcode:

  //--------------------------------------------------------------------------
  // User 1
  //--------------------------------------------------------------------------
  try
    JvMemo1.Lines.Add('Recording User Anmeldung läuft');
    JvMemo1.Refresh;

    Randomize;
    v7Session1.Logon(frmUser.Edit4.Text,frmUser.Edit1.Text,frmUser.Edit3.Text,StrToInt(frmUser.Edit2.Text),tvApplicationTypeClient,32100,tvServerConnectionLevelFull,FALSE,tvStationUsageOwner);
    oCallFolder1 := v7Session1.GetDefaultFolder(tvFolderCalls);
    oCallItems1 := oCallFolder1.Items;
    oSystemTargetFolder1 := v7Session1.GetDefaultFolder(tvFolderSystemTarget);
    oTarget1 := _SystemTarget(oSystemTargetFolder1.Items.Item(frmUser.Edit1.Text,tvSearchkey));

    V7Session1.OnCallStatusChange := V7Session1CallStatusChange;
    sOwnerName1 := oCallFolder1.Name;

    JvMemo1.Lines.Add('Recording User wurde angemeldet');
    JvMemo1.Refresh;

  except
    //bFehler := True;
    JvMemo1.Lines.Add('Fehler bei der Anmeldung von Recordinguser');
    forms.Application.Terminate;
    //frmSetup.ShowModal;
  end;
und folgenden Code auch noch

Delphi-Quellcode:

procedure TfrmMain.v7Session1CallStatusChange(ASender: TObject; const ID: WideString; Status, OldStatus: TOleEnum);
begin
  //--------------------------------------------------------------------------
  // ID des Calls zuweisen
  //--------------------------------------------------------------------------
  oCurrentCall1 := _Call(v7Session1.GetItem(ID,''));
  sHistoryCall1 := oCurrentCall1.CallHistoryID;
  sCallID1 := ID;
  //--------------------------------------------------------------------------
  // Satus des Anrufes auswerten und darauf reagieren
  //--------------------------------------------------------------------------
  case Status of
    tvPartyStatusUnknown:
        JvMemo1.Lines.Add('unknown ' + sUser1Name);
    tvPartyStatusNone:
        JvMemo1.Lines.Add('none ' + sUser1Name);
    tvPartyStatusActive:
        begin
            JvMemo1.Lines.Add('ringing ' + sUser1Name);
  // usw......
da ich das aber nun sehr oft brauche wollte ich das in Funktionen und Prozeduren umbauen und mit Arrays arbeiten (wenn das geht ?)
Dabei habe ich folgendes gemacht

Delphi-Quellcode:

function LogOn(const sServer: string;const sUser, sPass, sID: string;var iCount:integer): boolean;
var
  v7Session : Array[0..5] of Tv7Session;
begin
  v7Session[1] := Tv7Session.Create(Application);
  v7Session[1].Logon(sServer,sUser,sPass,StrToInt(sID),tvApplicationTypeClient,32100,tvServerConnectionLevelFull,FALSE,tvStationUsageOwner);
  oCallFolder[1] := v7Session[1].GetDefaultFolder(tvFolderCalls);
  oCallItems[1] := oCallFolder[1].Items;
  oSystemTargetFolder[1] := v7Session[1].GetDefaultFolder(tvFolderSystemTarget);
  oTarget[1] := _SystemTarget(oSystemTargetFolder[1].Items.Item(sUser,tvSearchkey));
  
   // diese zeile geht nicht warum bzw wie muss ich es machen ???

   V7Session[1].OnCallStatusChange := V7Session[1]CallStatusChange;


   sOwnerName[1] := oCallFolder[1].Name;

end;


procedure TfrmMain.v7Session[1]CallStatusChange(ASender: TObject; const ID: WideString; Status, OldStatus: TOleEnum);
begin

end;

[Fehler] Main.pas(110): ';' erwartet, aber '[' gefunden
[Fehler] Main.pas(110): '=' erwartet, aber ';' gefunden
[Fehler] Main.pas(127): Inkompatible Typen: 'Tv7Session[1]CallStatusChange' und 'Tv7Session'
usw...
Nun bekomme ich bei der markierten Zeile einen Fehler, wie muss ich es Umbauen das es geht?

Martin
ich weiss, das ich nichts weiss!
  Mit Zitat antworten Zitat