Autor Beitrag
patrick dee
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 311

Win 98SE, WinXP
D3,D6
BeitragVerfasst: Sa 19.07.03 10:59 
hi

ich bin immer noch auf der suche nach einer lösung meines problems. habe in einem netzwerk wave files liegen. nun möchte ich anhand der nummer sie finden und spielen. wenn ich als drivearray ein lokales laufwerk nehme zb. C so wird die wav gefunden. irgendwie wird nicht auf netzlaufwerken gesucht. weiss nur nicht warum. hier ein wenig code was ich bisher habe :

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Inifiles, FileCtrl, MPlayer, ExtCtrls;

type
  TfrmMain = class(TForm)
    Button1: TButton;
    edtRelPath: TEdit;
    lblFileName: TLabel;
    MediaPlayer1: TMediaPlayer;
    Button2: TButton;
    Button3: TButton;
    Panel1: TPanel;
    Button4: TButton;
    Label3: TLabel;
    Label1: TLabel;
    GroupBox1: TGroupBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    RadioButton5: TRadioButton;
    RadioButton6: TRadioButton;
    RadioButton7: TRadioButton;
    RadioButton8: TRadioButton;
    Label2: TLabel;
    Label4: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
  thefile  : String;
    procedure FindFile (directory, filename: String);

    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  frmMain: TfrmMain;





implementation

{$R *.dfm}

procedure TfrmMain.FindFile (directory, filename: String);
var 
  SearchRec   : TSearchRec;
  NewPath     : String;
begin 
  directory := IncludeTrailingBackslash (directory); 
  try
    if FindFirst (directory + '*.*', faAnyFile, SearchRec) = 0 then
    repeat 
      if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then 
      begin 
        if (SearchRec.Attr and faDirectory = faDirectory) then
        begin
          NewPath := IncludeTrailingBackslash (directory + SearchRec.Name); 
          FindFile (NewPath, filename);
          Label3.Caption := NewPath;
        end
        else
          if filename = SearchRec.Name then 
          begin 
            thefile := directory + filename;
            Exit; 
          end;
      end; 
    until FindNext (SearchRec) <> 0;
  finally 
    SysUtils.FindClose (SearchRec); 
  end;

end; 




procedure TfrmMain.Button1Click(Sender: TObject);
const
  drivearray  : array [0..1] of String = ('J:\', 'H:\');
var
  fixedpath   : String; 
  filename    : String; 
  directory   : String;
  i           : Integer; 
begin
  thefile := ''; 
  fixedpath := '';
  directory := IncludeTrailingBackSlash (fixedpath) + StringReplace (edtRelPath.Text, filename, '', [rfReplaceAll]);

  for i := 0 to Length (drivearray) - 1 do
  begin
    filename := ExtractFileName (edtRelPath.Text); 
    directory := IncludeTrailingBackslash (drivearray [i] + fixedpath) + StringReplace (edtRelPath.Text, filename, '', [rfReplaceAll]); 
    FindFile (directory, filename); 
    if thefile <> '' then
    begin
      lblFileName.Caption := thefile;
      Panel1.Caption := thefile;
      Exit;
    end;
  end; 
end; // btnFindClick







procedure TfrmMain.Button2Click(Sender: TObject);
begin
 with mediaplayer1 do begin
  mediaplayer1.filename:= panel1.caption;
   mediaplayer1.open;
    mediaplayer1.Play;
    end;
     end;

procedure TfrmMain.Button3Click(Sender: TObject);
begin
  mediaplayer1.stop;
   end;

procedure TfrmMain.Button4Click(Sender: TObject);
begin
 close;
  end;

end.



Nun wenn ich in der edtRelPath zb eingebe 8000\01.wav wird nix gefunden. obwohl die 8000\01.wav auf laufwerk J liegt. auf den laufwerken befindet sich immer ein ordner der waves heißt. für jede cd gibt es in diesem ordner einen Ordner mit der cd nummer in diesem fall einen ordner der 8000 heißt und in diesem sind die tracks drin also 01.wav, 02.wav. usw. nun möchte ich nur das man in der edtRelPath eingeben tut 8122\02.wav auf suchen geht und dann das ergbenis als filename für den mediaplayer zusammengebaut wird. das habe ich ja schon gemacht. nur funzt das ganze nicht. wo liegt mein fehler ????

hoffe es hat jemand eine soziale sekunde und kann mir helfen trotz besten badewetter.

danke euch allen

patrick

_________________
Glauben heißt nichts wissen ...