Bitte Windows iPod-Benutzer um Test meines Programms

Dieses Thema im Forum "iPod" wurde erstellt von netzwerk, 30.01.2005.

  1. netzwerk

    netzwerk Thread Starter MacUser Mitglied

    MacUser seit:
    30.12.2004
    Beiträge:
    635
    Zustimmungen:
    1
    Hallo liebe iPod Benutzer,

    ich habe ein Programm geschrieben, welches einen beliebigen Text (z. B. ein Zeitungsartikel) an den iPod schickt. Dieses Programm "splittet" den Text automatisch, wenn dieser zu groß für die iPod Textdatei wäre.

    Würdet ihr dieses Programm mal für mich testen und mir sagen wie es euch gefällt und was man verbessern sollte?

    Programmiert habe ich an einem NT Rechner (funktioniert also auf Win 2k und XP) und probiert habe ich es mit meinem iPod mini.

    Über Kritik würde ich mich freuen!

    P. S.: So Kleinigkeiten, wie das Icon ändern werden natürlich noch erledigt ;)
     
  2. cym

    cym MacUser Mitglied

    MacUser seit:
    03.05.2004
    Beiträge:
    1.349
    Zustimmungen:
    9
    Habs nicht getestet, aber gibts das auch für Mac? ;)
     
  3. netzwerk

    netzwerk Thread Starter MacUser Mitglied

    MacUser seit:
    30.12.2004
    Beiträge:
    635
    Zustimmungen:
    1
    Leider (noch) nicht ;)
     
  4. ricci007

    ricci007 MacUser Mitglied

    MacUser seit:
    11.10.2004
    Beiträge:
    2.477
    Zustimmungen:
    13
    Wie waers, wenn du den Source unter GNU/GPL v2.0 stellst, dann kann ich mal reinschauen und evlt. ein biszchen rumpfuschen - Mac-Portierung :D
     
  5. netzwerk

    netzwerk Thread Starter MacUser Mitglied

    MacUser seit:
    30.12.2004
    Beiträge:
    635
    Zustimmungen:
    1
    Den Code willst du nicht wirklich sehen.

    Ich sage nur Chaos ;) Aber wenn du wirklich Interesse hast, dann poste ich ihn mal mit Kommentaren. Ich habs übrigens in Delphi geschrieben.
     
  6. ricci007

    ricci007 MacUser Mitglied

    MacUser seit:
    11.10.2004
    Beiträge:
    2.477
    Zustimmungen:
    13
    Axo Delphi. Aber kannst trotzdem mal als Code-Schnippsel hier posten :D
     
  7. netzwerk

    netzwerk Thread Starter MacUser Mitglied

    MacUser seit:
    30.12.2004
    Beiträge:
    635
    Zustimmungen:
    1
    Bitte! Hoffentlich erschreckt das jetzt niemanden.
    Code:
    var
      Form1: TForm1;
      Memos: array[0..1000]of TMemo;
      iPodstring: string;
    
    implementation
    
    {$R *.dfm}
    
    function Laufwerksbuchstabe(Zeile:string):string;
    var merk:string;
    begin
     merk:=zeile;
     //Nimmt die ersten 2 Zeichen aus dem String (c:)
     Laufwerksbuchstabe:=merk[1]+merk[2]+'\';
    end;
    
    
    procedure TForm1.Button1Click(Sender: TObject);
    var zaehle,i,check,j:integer;
    begin
     //initialisiert die Memos in die später geschrieben wird
     for i:=1 to 1000 do
      begin
       Memos[i]:=TMemo.create(Self);
       Memos[i].Visible:=false;
       Memos[i].parent:=Form1;
      end;
    
     //zaehlt die Zeilen des Eingabememos
     zaehle:=Memo1.Lines.Count;
    
     //der text kann nur 56 memozeilen lang sein (4000 zeichen pro txt-datei auf dem iPod)
     check:=zaehle div 56;
     if zaehle > 56 then
      if zaehle mod 56 > 0 then inc(check);
     if check = 0 then
      begin
       for i:=0 to zaehle do
        begin
         Memos[1].Lines.Add(Memo1.Lines[i]);
        end;
      end
     else
      begin
       for j:=1 to check do
        begin
         for i:=(j-1)*56 to j*56-1 do
          begin
           Memos[j].Lines.Add(Memo1.Lines[i]);
           if i=zaehle then break;
          end;
        end;
      end;
    
     if check = 0 then
      Memos[1].Lines.SaveToFile(iPodstring+Edit1.Text+'[1].txt')
     else
      begin
       for j:=1 to check do
       Memos[j].Lines.SaveToFile(iPodstring+Edit1.Text+'['+IntToStr(j)+'].txt');
      end;
    
     Memo1.Clear;
     Edit1.Text:='Nachrichten';
     Label2.Visible:=True;
    
    end;
    
    procedure TForm1.Timer1Timer(Sender: TObject);
    var y,i:integer;
        iPod:boolean;
    begin
     //test ob iPod vorhanden ist:
    
    
     //aktualisierung der drivecombobox
     with DriveComboBox1 do TextCase := TextCase;
    
     y:=DriveComboBox1.Items.Count;
    
     iPod:=false;
    
     for i:=0 to y-1 do
      begin
       if Laufwerksbuchstabe(DriveComboBox1.Items[i])<>'a:\' then
       if DirectoryExists(Laufwerksbuchstabe(DriveComboBox1.Items[i])+'\Notes\')= true then
          begin
          iPod:=true;
          iPodstring:=Laufwerksbuchstabe(DriveComboBox1.Items[i])+'\Notes\';
          break;
          end
          else iPod:=false;
      end;
    
     if iPod=true then
     begin
      Button1.Enabled:=True;
      Label1.Font.Color:=clGreen;
      Label1.Caption:='iPod angeschlossen';
     end
     else
     begin
      Button1.Enabled:=False;
      Label1.Font.Color:=clRed;
      Label1.Caption:='iPod nicht gefunden!'
     end
    end;
    
    procedure TForm1.Memo1Change(Sender: TObject);
    begin
     Label2.Visible:=False;
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
     {schaltet die windows fehlermeldung aus, dass auf ein laufwerk
     nicht zugegriffen werden konnte... }
     SetErrorMode(SEM_FAILCRITICALERRORS);
    end; 

    P. S.:Frag ruhig, wenn was unklar ist!
     
    Zuletzt bearbeitet: 30.01.2005
  8. ricci007

    ricci007 MacUser Mitglied

    MacUser seit:
    11.10.2004
    Beiträge:
    2.477
    Zustimmungen:
    13
    Waer noch nett, wenn du das Code-Schnippsel zwischen [ + CODE + ] ... reinschreibst :D
     
  9. ricci007

    ricci007 MacUser Mitglied

    MacUser seit:
    11.10.2004
    Beiträge:
    2.477
    Zustimmungen:
    13
    Ja, gut :D Ist halt ein 20 Min. Hack :D :D :D
    In ANSI C 89 koenntest du noch ein DLL dazubauen, die entsprechende Malloc-Funktionen zur Verfuegung stellt, damit es bei groeszeren Textdateien nicht zum Crash kommt (oder halt ewig dauert, mit Prozessor-Auslastung von 100%) :D Und dann aus Delphi draus zugreifen :)
     
  10. ricci007

    ricci007 MacUser Mitglied

    MacUser seit:
    11.10.2004
    Beiträge:
    2.477
    Zustimmungen:
    13
    Denn sowas wie "zaehle:=Memo1.Lines.Count;" wuerde ich bei groeszeren Files meiden *fg*
     
Die Seite wird geladen...

Diese Seite empfehlen