AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datei?!?!?!??!

Ein Thema von Chriss · begonnen am 30. Jan 2003 · letzter Beitrag vom 30. Jan 2003
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#11
  Alt 30. Jan 2003, 19:38
Hallo Daniel B,

vielen Dank für den Link !! Hier muß keiner dumm sterben, selbst ich nicht!

Habe meinen Programmpunkt angepaßt:

Delphi-Quellcode:
begin
  s := AppBkSp(DokuPath) + 'Hinweis1.doc';
  ShellExecute(Handle, nil, PChar(s), nil, nil, SW_SHOW);
end;
Positiver Nebeneffekt: man landet sofort in Word, in der Version mit WinExec wurde Word zwar gestartet, aber mein Programm behielt den Focus.


Hallo Chakotay1308,

beim nächsten Mal bitte eine Link
Hab' die 5 Seiten durchgesehen, man könnte denken, Ihr seid alle nicht ausgelastet ... Auch wenn es "nur" Klatsch & Tratsch ist, ich habe mich köstlich amüsiert. Wenn ich gewußt hätte, wieviel Spaß man bei Euch haben kann, hätte ich mich schon viel eher im Forum gemeldet. Ich werd' mir wohl auch noch so einen Namen zulegen: pkg2000 !!!


mfg
eddy
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#12
  Alt 30. Jan 2003, 19:46
Hallo eddy,
Zitat von eddy:
Hier muß keiner dumm sterben, selbst ich nicht!
Natürlich nicht.
Zitat:
Positiver Nebeneffekt: man landet sofort in Word, in der Version mit WinExec wurde Word zwar gestartet, aber mein Programm behielt den Focus.
Auch eines der Gründe, warum Borland sagt das man WinExec nicht mehr benutzen soll.
Heute hab ich auch noch in der D3Prof. Hilfe folgendes gefunden:
Zitat:
Die Windows-API verfügt über eine Funktion namens ShellExecute, die Anwendungen ausführt. Dafür sind jedoch viele Parameter erforderlich, die in Anwendungen unter Delphi überflüssig sind. Die Unit FMXUtils stellt eine besser einsetzbare Alternative namens ExecuteFile zur Verfügung.
ExecuteFile arbeitet auf zweierlei Weise. Wird der Name einer ausführbaren Datei übergeben, führt ExecuteFile diese Anwendung aus. Wird der Name eines Dokuments, das mit einer Anwendung verknüpft ist, übergeben, führt ExecuteFile die Anwendung aus und öffnet das Dokument automatisch mit der Anwendung.
Habe es aber selbst noch nie probiert.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#13
  Alt 30. Jan 2003, 19:48
Zitat von eddy:
"einfach mal suchen" ist super, aber eine Begründung und ein Beispiel wären mir lieber
Beispiel steht mit in der Library, wenn ich mich nicht irre.
Zitat:
(am Besten gleich mit meinen Vorgaben).
So nicht. Wir helfen gerne bei Problemen, aber erwarte nicht, dass wir dir dein Programm programmieren. Wenn du dein Programm programmiert haben willst, dann wende dich an eine Software-Firma, die induvidual Software entwickelt.
Zitat:
Ich bin schon zufrieden, daß die WinExec-Version funktioniert!! Und der gefundene Hilfetext für ShellExecute hilft mir nicht wirklich weiter (entspricht nicht meiner Logik oder ich bin zu dummdumm).
Ich weiß nicht, wo du gekuckt hast, aber wenn man etwas englisch kann, sollte der Text mit dem Beispiel klar werden.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#14
  Alt 30. Jan 2003, 21:14
Hallo Daniel B,

habe jetzt auch noch ExecuteFile ausprobiert. Die PAS-Datei ist unter ...\Delphi5\Demos\Doc\Filmanex vergraben. Parameter haber ich unter
http://tipp.delphiclub.de/Scripts/Sh...pID=34&KatID=3 unter Nutzung von Google gefunden, da meine Hilfe (F1) nichts geliefert hat.

Delphi-Quellcode:
begin
  s := AppBkSp(DokuPath) + 'Hinweis1.doc';
// ShellExecute(Handle, nil, PChar(s), nil, nil, SW_SHOW);
  ExecuteFile( s,'','',SW_SHOW);
end;
Interessanterweise wird in dem entsprechenden Programmteil ebenfalls ShellExecute aufgerufen:

Delphi-Quellcode:
function ExecuteFile(const FileName, Params, DefaultDir: string;
  ShowCmd: Integer): THandle;
var
  zFileName, zParams, zDir: array[0..79] of Char;
begin
  Result := ShellExecute(Application.MainForm.Handle, nil,
    StrPCopy(zFileName, FileName), StrPCopy(zParams, Params),
    StrPCopy(zDir, DefaultDir), ShowCmd);
end;
Optisch sieht es auf jeden Fall besser aus.



Hallo Luckie,

ist wohl heute nicht Dein Tag!!

Du irrst nicht, DanielB hat weiter oben doch den Link eingeblendet. Weder ShellExecute noch WinExec waren das Problem - nur ein Gedankenaustausch!
Deine Reaktion über meinen Wunsch: "Am besten gleich mit meinen Vorgaben" ist auch überzogen, aber ich schreibe beim nächsten Mal dahinter, wenn ich Spaß mache. Außerdem ist meinem Text von 20:38 ja zu entnehmen, daß ich es geschafft habe, meine Vorgaben selbst einzusetzen. Nirgendwo stand etwas in der Art: Programmiert mir doch bitte mein Programm .... Vielleicht schießt Du ja öfters Mal mit Kanonen auf Spazen! Wünsche wird man wohl noch äußern dürfen, auch wenn manche nicht in Erfüllung gehen.

Was das Beispiel betrifft: ich habe nicht weit genug gescrollt, die Beispiele habe ich erst gefunden, nachdem ich Deine Bemerkungen gelesen hatte.

Ich hoffe, das war es nun zu diesem wenig effektiven Teil.

An beide:
mfg
eddy
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#15
  Alt 30. Jan 2003, 21:29
Hi eddy,
Zitat von eddy:
habe jetzt auch noch ExecuteFile ausprobiert. Die PAS-Datei ist unter ...\Delphi5\Demos\Doc\Filmanex vergraben.
Ja tatsächlich, habe ich auch unter D6PE und D3Pro.

[Code snippsel gesnippt]
Ja macht Sinn, man muss nur weniger Parameter übergeben. Eigentlich nicht schlecht, man müsste sich noch die Unit anschauen, was noch dabei ist, sonst hat man nur deswegen wieder eine Unit eingebunden die das Programm nur grösser macht.
Muss ich mir mal in Ruhe anschauen.
Danke für die Info!http://n-digital.info/Bilder/daumen.gif

Grüsse, Daniel
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#16
  Alt 30. Jan 2003, 21:35
Kuckt euch mal an, was ExecuteFile macht:
Delphi-Quellcode:
function ExecuteFile(const FileName, Params, DefaultDir: string;
  ShowCmd: Integer): THandle;
var
  zFileName, zParams, zDir: array[0..79] of Char;
begin
  Result := ShellExecute(Application.MainForm.Handle, nil,
    StrPCopy(zFileName, FileName), StrPCopy(zParams, Params),
    StrPCopy(zDir, DefaultDir), ShowCmd);
end;
Und was ist so schwer daran Shellexecute aufzurufen?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#17
  Alt 30. Jan 2003, 21:40
Naja, man übergibt drei Parameter weniger.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 16:34 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