Autor Beitrag
Throx_X
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 11.08.11 15:23 
Hallo,

ich habe eine fertige DLL(die funktioniert) wo Barcodes ausgelesen werden. Das ist jedoch ein kleines Prog, wo ich manuell nur eine Dateie (jpg,tif,png) auswählen kann und entsprechend wird die Datei durch ein weiteres "klicken" richtig ausgelsen(der Barcode). Ich möchte jedoch, dass dies automatisch passiert und mit mehreren Dateien. Also in einem Ordner X soll das Programm suchen ob tif,jpg,png Dateien enthalten sind, und wenn ja dann sollen diese Barcodes in den Dateien automatisch ausgelesen werden und die Barcodes sollen einfach in einem Ordner Y gespeichert werden. Das kann ruhig eine Konsolenanwendung sein. Am besten wäre es, wenn der Anwender den Ordner X bei der Ausführung der .exe Datei mit übergibt. Im Ordner X sind also immer Bilddateien wo mindestens ein Barcode vorhanden ist.
Ordner X = c:\temp
Ordner Y = c:\temp2
Habe hier ein bissle Code, jedoch beim StartupPath erscheint der Fehler:
Fehler 1 Der Typ- oder Namespacename "StartupPath" ist im Namespace "BarcodeTestApp" nicht vorhanden. (Fehlt ein Assemblyverweis?)
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
string ordnerX = BarcodeTestApp.StartupPath;
string ordnerY = Path.Combine(ordnerX, "Barcodes");
Directory.CreateDirectory(ordnerY);
var dateien = Directory.GetFiles(ordnerX, "*.*", SearchOption.TopDirectoryOnly).Where(d=>d.EndsWith(".tif") || d.EndsWith(".jpg") || d.EndsWith(".png"));
foreach (var dateiPfad in dateien)


Ich danke im Vorraus für die Hilfe

Moderiert von user profile iconTh69: C#-Tags hinzugefügt
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 11.08.11 16:43 
Hallo,

möchtest du einfach den Pfad, aus dem deine Anwendung startet, dann einfach
ausblenden C#-Quelltext
1:
Application.StartupPath					

benutzen.

Ansonsten bin ich eher ein bißchen verwirrt durch deine Beschreibung...
Throx_X Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 11.08.11 17:42 
Hallo,
ich verstehe Deine Frage nicht. Also ich habe ne Exe incl. DLL die eine Datei umwandeln kann. Wie binde ich jetzt die zwei Dateien in den Code und automatisiere dann noch alles.
Habe den Code noch:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
        static void Main(string[] args)
        {
            string quellPfad = @"C:\TEMP"// Quellverzeichnis
            string zielPfad = @"C:\TEMP2";  // Zielverzeichnis

            var erweiterungen = new string[] { ".jpg"".png"".tif" };

            var quellDateien = from datei in Directory.EnumerateFiles(quellPfad, "*.*", SearchOption.TopDirectoryOnly)
                               from erweiterung in erweiterungen
                               where datei.EndsWith(erweiterung)
                               select datei;

            foreach (var quellDatei in quellDateien)
            {
                string zielDatei = Path.Combine(zielPfad, Path.GetFileName(quellDatei));
                Console.WriteLine("Quelle: {0}, Ziel: {1}", quellDatei, zielDatei);

                // Verschieben
                File.Move(quellDatei, zielDatei);

            }
        }

Der Code kopiert jedoch nur den Inhalt von Temp nach Temp2 1:1 .

Danke für Deine Hilfe

Grüße
Marius

Moderiert von user profile iconTh69: C#-Tags hinzugefügt