AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Datei öffnen ohne Dialog (blutiger Newbie)
Thema durchsuchen
Ansicht
Themen-Optionen

Datei öffnen ohne Dialog (blutiger Newbie)

Ein Thema von tretmine · begonnen am 6. Jan 2003 · letzter Beitrag vom 6. Jan 2003
Antwort Antwort
tretmine

Registriert seit: 6. Jan 2003
36 Beiträge
 
Delphi 4 Standard
 
#1

Datei öffnen ohne Dialog (blutiger Newbie)

  Alt 6. Jan 2003, 15:08
Gleich mal als erstes:
Ich bin ein ziemlicher Newbie *gg*

Ich möchte eine Datei aus einer Liste direkt öffnen ohne ein Dialogfenster zu erzeugen. Bisher habe ich für meinen Wissensstand nix nützliches zu TOpenDialog(wird wohl damit eh nicht gehen) und OpenFile gefunden. Es müssen alle Dateitypen die spezifiziert sind (also. z.B. *.txt, *.exe, *.jpg, etc.) geöffnet werden. Muss ich dabei mit der Registry Dateierweiterungs-Liste (z.B. HKEY_CLASSES_ROOT (eine unter vielen)) arbeiten und dem darunter stehenden Programm die nötigen Parameter übergeben? Oder geht dies leichter?

MfG Phil, der sich erst einarbeitet...

P.S.: Sorry, wenn dieser Beitrag in einer falschen Area steht, aber ich weiß nicht einmal, was "VCL-Komponenten" sind :\
klein, rund und explosiv!
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#2
  Alt 6. Jan 2003, 15:20
Hi und willkommen,
also, was willst du machen? Zum laden von Dateien in eine Memo:
Memo1.Lines.LoadFromFile('C:\Pfad\Zur\Datei.dat'); Aber es kommt darauf an, was du machen willst...

VCL ist die Standardmäßige Programmierweise. VCL steht für Visual Component Library. Daneben gibt es noch CLX (wofür das steht weiß ich nicht), dass ist die Art unter Linux (erst ab Delphi 5). Um unter Linux zu programmieren mit Delphi brauchst du Kylix (sozusagen Delphi für Linux). Dann gibt es noch nonVCL, damit programmiert man einfach nur Source. Also man zieht keine Komponenten auf das Formular, usw...

Fragen dazu?

Chris
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#3
  Alt 6. Jan 2003, 15:23
Moin Phil,

erst einmal herzlich willkommen.

Zitat von Phil:
Ich bin ein ziemlicher Newbie
Na, das waren wir ja wohl ausnahmslos alle mal

Da möchte ich erst einmal mit einer scheinbar bei Dir vorhandenen, aber, wie ich finde durchaus verständlichen, Begriffsverwirrung aufräumen:

TOpenDialog (bzw. TSaveDialog) öffnet (bzw. speichert) keine Datei.
Diese Dialoge dienen nur dazu den Pfad und Dateinamen abzufragen. Was Du dann mit diesem Pfad anfängst ist Deine Sache.

Da Du ziemlich verschiedene Dateitypen verarbeiten willst, hätte ich da aber noch einmal eine Frage:
Was soll mit diesen Dateien geschehen?
Ggf. müsste das Öffnen typspezifisch unterschiedlich ablaufen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#4
  Alt 6. Jan 2003, 15:29
Hi,
ich glaube, ich habe jetzt verstanden, was du willst: du willst eine Datei aus einer Liste (z.B. ListBox) mit dem StandardEditor öffnen, kann das sein?
Dazu ist ShellExecute zu Empfehlen. Also, 1 ListBox mit Inhalt, 1 Button. Button1.OnClick:
ShellExecute( Handle, 'open', PChar( ListBox1.Items[ ListBox1.ItemIndex ] ), nil, nil, SW_SHOW ); Ich hoffe, dass war es, was du meintest...

Chris
  Mit Zitat antworten Zitat
tretmine

Registriert seit: 6. Jan 2003
36 Beiträge
 
Delphi 4 Standard
 
#5
  Alt 6. Jan 2003, 15:37
zu: Chakotay1308

Nö...

Ich will einen "Desktop-Manager" Schreiben, der meiner Unordnung standhält... *gg*

Das Projekt sieht so aus:
Verschiedene Profile für die Benutzer (Combobox)

Programm-Art auswählen(Combobox) (z.B. Spiele), der Manager zeigt danach die, vorher eingegebenen, Spiele(,etc.) in einer FileListBox (Ich erstelle eine Art Baumstruktur in den Profilordnern mit der ich dann die FLBox füttere). In der FLBox befinden sich eigentlich nur Textdateien, in welche ich den richtigen Pfad der Auszuführenden Datei hineinschreibe (z.B.: C.\Spiele\half-Life\CounterStrike\cs.exe). Diesen Text kann ich ja schnell mit LoadFromFile laden, nur sollte ich dann auch das betreffende Programm starten. Eine Möglichkeit wäre


OpenDialog1.filename:=ausgelesenerPfad;
OpenDialog1.execute;

Nur bringt mir letzteres ein Dialogfeld, welches ich bestätigen muss. Und genau diese Bestätigung will ich nicht! Ich will es direkt ausführen.

MfG Phil
klein, rund und explosiv!
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6
  Alt 6. Jan 2003, 15:41
Moin Phil,

sei doch bitte mal so gut, und lies Dir die Postings von Chris und mir noch einmal ganz genau durch.

Dann müsstest Du wissen
  1. Wie Du ein Programm startest
  2. Was es mit TOpenDialog auf sich hat

Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
tretmine

Registriert seit: 6. Jan 2003
36 Beiträge
 
Delphi 4 Standard
 
#7
  Alt 6. Jan 2003, 15:43
Zitat von Chakotay1308:
Hi,
ich glaube, ich habe jetzt verstanden, was du willst: du willst eine Datei aus einer Liste (z.B. ListBox) mit dem StandardEditor öffnen, kann das sein?
Dazu ist ShellExecute zu Empfehlen. Also, 1 ListBox mit Inhalt, 1 Button. Button1.OnClick:
ShellExecute( Handle, 'open', PChar( ListBox1.Items[ ListBox1.ItemIndex ] ), nil, nil, SW_SHOW ); Ich hoffe, dass war es, was du meintest...

Chris
Nicht nur mit dem Standarteditor... ;o)

Eher wie der Explorer unter Windows. Er öffnet jegliche Datei mit dem richtigen Programm, nur wie kann ich ein anderes Programm öffnen (und diesem eventuell Parameter übergeben?)

MfG Phil
klein, rund und explosiv!
  Mit Zitat antworten Zitat
tretmine

Registriert seit: 6. Jan 2003
36 Beiträge
 
Delphi 4 Standard
 
#8
  Alt 6. Jan 2003, 15:45
Oder kann ich mit ShellExecute jedes Prog öffnen?

MfG Phil, der das nicht ganz verstanden hat...
klein, rund und explosiv!
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#9
  Alt 6. Jan 2003, 15:48
Hi Phil,
also ShellExecute übergibt der Shell das Programm. Diese sucht aus der Registry das Programm aus, dass dieses bearbeitet. Bei Programm funktioniert das ähnlich, nur dass die Shell dann einen neuen Prozess startet, um dass Programm selber zu starten.
Soll heißen: Mit ShellExecute kannst du Dateien öffnen, Programme starten und Websites öffnen....

Parameter: 4. Parameter von ShellExecute

Chris
  Mit Zitat antworten Zitat
tretmine

Registriert seit: 6. Jan 2003
36 Beiträge
 
Delphi 4 Standard
 
#10

Thx

  Alt 6. Jan 2003, 15:51
Thx euch zwei für die flotte Beantwortung.
Hat mich sehr gefreut...

MfG Phil
klein, rund und explosiv!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz