Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Shellexecute (https://www.delphipraxis.net/6929-shellexecute.html)

Andreas L. 27. Jul 2003 18:32


Shellexecute
 
Hi,
ich ahbe da ein Problem. Ich möchte ein MySQL Tool progarmmieren. Damit man eine datenbank erstellen kann, ruft man normalerweise das proggi mysql.exe über die command line auf. Und gibt ein
Code:
create database TEST;
.
Ich rufe diese MySQl.exe mit Shellexecute auf. Nun möchte ich das
Code:
create database TEST;
nach der Ausführung des Porggis dort ausgeführt wird. Es soll den gleichen Effekt haben wie als wenn ich den oben erlauterten Schritt mache. Mit Parameter wie z.B. -create oder ähnlcihen ging e snicht. Wie stelel ich das an. Bin wirklich ratlos.

thx

Chewie 27. Jul 2003 18:40

Re: Shellexecute
 
Verstehe ich dich richtig, du willst MySQL-Querys an den Server über das Konsolen-Client-Tool mysql schicken? Das würde ich nicht empfehlen, da gibt es bessere Lösungen.
Such mal hier Forum:
Hier im Forum suchenmysql pas
Hier im Forum suchenzeos
Zu ersterem gibts hier auch ein Tutorial, allerdings bsiher nur der erste Teil (Verdammt, ich müsste mal den zweiten Teil fertigmachen :oops: )

Alexander 27. Jul 2003 18:40

Re: Shellexecute
 
Kuck dir mal Chewies Tutorial dazu an:
http://www.delphipraxis.net/viewtopic.php?t=7266
[edit]mist zu spät[/edit]

Andreas L. 27. Jul 2003 18:44

Re: Shellexecute
 
Das Tool soll nur für den lokalen MySQL Server sein. Geht das nicht irgendwie mit ShellExecute?

Alexander 27. Jul 2003 18:48

Re: Shellexecute
 
Mit der mysql.pas funktioniert, dass doch genauso gut, nur besser ;-)
Denn dein Programm ist eigenständiger...
Über Shellexecute ist das doch viel zu umständlich...

Luckie 27. Jul 2003 18:52

Re: Shellexecute
 
Kuck dir mal an welcher Parameter bei Shellexecute die Parameter enthält.

Chewie 27. Jul 2003 19:19

Re: Shellexecute
 
Ich weiß gar nicht, ob mysql Parameter entgegennehmen kann (oder besser gesagt verarbeiten). Die Eingabe der Query erfolgt ja so wie bei Microsofts Konsolen-FTP-Client (ich weiß nicht, wie man dieses Verfahren nennt).

Phoenix 27. Jul 2003 19:45

Re: Shellexecute
 
Um es kurz zu machen: Über ShellExecute geht es nicht.

Das Tool mysql.exe stellt selber eine persistente Verbindung zur Datenbank her (ähnlich wie Telnet, es ist also eine offene Session), über die dann die Abfragen und Antworten der Datenbank laufen.

Shellexecute ruft demnach nur das Tool auf, das die Verbindung herstellt. Du kannst aber hinterher nicht mehr darauf zugreifen und Abfragen an die Datenbank schicken lassen. Zumindest nicht ohne weiteres. Wenn ein command-window aufgeht könntest Du natürlich dessen Handle herausfinden und die einzugebenden Tasten nacheinander da hin schicken, aber das wäre etwas arg umständlich, zumal Du die Antwort da nicht mehr so ohne weiteres herausbekommen kannst.

Die einfachste Version ist also tatsächlich eine eigene persisente Verbindung aufzumachen und damit zu arbeiten.

Andreas L. 27. Jul 2003 19:53

Re: Shellexecute
 
Danke für eure Antworten. Werde mir später das Tut von Chewie mal anschauen.

Gast 27. Jul 2003 21:13

Re: Shellexecute
 
Soweit ich mich entsinne, sind TELNET und FTP von MS skriptfähig. Will heißen, wenn du eine Textdatei hineinpipst, könnte es auch mit MySQL gehen. Könnte! ... keine Garantie.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 Uhr.
Seite 1 von 2  1 2      

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