WDForge - Forum

Le forum des développeurs professionnels WinDev ®

Commande en console windows invisible

Discussion sur les ressources proposées

Message non lupar R&B » Sam 20 Juin 2015 15:34

Nous actualisons la ressource cWDDos de DrChalry93 améliorée par Nicolas COMPAIN puis Jurassic Pork.
Dans cette nouvelle version, nous illustrons les procédure abonnées de la poo.
Discutez-en ici..
R&B
Administrateur WDForge
 
Messages: 31
Enregistré le: Jeu 5 Mar 2015 23:21

Message non lupar DrCharly93 » Mer 24 Juin 2015 22:18

Bonjour et merci a ceux qui ont fait évoluer le projet : Nicolas COMPAIN & Jurassic Pork.
Ça donne envie de remettre les mains dans le cambouis pour apporter quelques améliorations...
- Intégration du multitâche ?
- Gestion des caractères accentués (ex: nom des répertoires et/ou programmes) ?
- Possibilité de stopper une commande ?
DrCharly93
Administrateur WDForge
 
Messages: 3
Enregistré le: Dim 3 Mai 2015 18:20

Message non lupar R&B » Lun 27 Juil 2015 16:02

+1 si tu sais faire tout cela, ce serait une belle plus value.
R&B
Administrateur WDForge
 
Messages: 31
Enregistré le: Jeu 5 Mar 2015 23:21

Message non lupar JeAn-PhI77 » Mar 8 Sep 2015 18:49

bonjour,

j'aimerais pouvoir utiliser cette classe pour restaurer un dump mysql mais impossible de lancer la commande :

Code: Tout sélectionner
"C:\MySQL\MySQL Server 5.0\bin\mysql.exe" -u LOGIN -pMOT_DE_PASSE < "CHEMIN DU FICHIER DU DUMP *.sql"


cela me donne la fenêtre d'aide sans exécuter la commande

Code: Tout sélectionner
C:\MySQL\MySQL Server 5.0\bin\mysql.exe  Ver 14.12 Distrib 5.0.67, for Win32 (ia32)
Copyright (C) 2000-2008 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Usage: C:\MySQL\MySQL Server 5.0\bin\mysql.exe [OPTIONS] [database]
  -?, --help          Display this help and exit.
  -I, --help          Synonym for -?
  --auto-rehash       Enable automatic rehashing. One doesn't need to use
                      'rehash' to get table and field completion, but startup
                      and reconnecting may take a longer time. Disable with
                      --disable-auto-rehash.
  -A, --no-auto-rehash
                      No automatic rehashing. One has to use 'rehash' to get
                      table and field completion. This gives a quicker start of
                      mysql and disables rehashing on reconnect. WARNING:
                      options deprecated; use --disable-auto-rehash instead.
  -B, --batch         Don't use history file. Disable interactive behavior.
                      (Enables --silent)
  --character-sets-dir=name
                      Directory where character sets are.
  --default-character-set=name
                      Set the default character set.
  -c, --comments      Preserve comments. Send comments to the server. The
                      default is --skip-comments (discard comments), enable
                      with --comments
  -C, --compress      Use compression in server/client protocol.
  -#, --debug[=#]     This is a non-debug version. Catch this and exit
  -D, --database=name Database to use.
  --delimiter=name    Delimiter to be used.
  -e, --execute=name  Execute command and quit. (Disables --force and history
                      file)
  -E, --vertical      Print the output of a query (rows) vertically.
  -f, --force         Continue even if we get an sql error.
  -G, --named-commands
                      Enable named commands. Named commands mean this program's
                      internal commands; see mysql> help . When enabled, the
                      named commands can be used from any line of the query,
                      otherwise only from the first line, before an enter.
                      Disable with --disable-named-commands. This option is
                      disabled by default.
  -g, --no-named-commands
                      Named commands are disabled. Use \* form only, or use
                      named commands only in the beginning of a line ending
                      with a semicolon (;) Since version 10.9 the client now
                      starts with this option ENABLED by default! Disable with
                      '-G'. Long format commands still work from the first
                      line. WARNING: option deprecated; use
                      --disable-named-commands instead.
  -i, --ignore-spaces Ignore space after function names.
  --local-infile      Enable/disable LOAD DATA LOCAL INFILE.
  -b, --no-beep       Turn off beep on error.
  -h, --host=name     Connect to host.
  -H, --html          Produce HTML output.
  -X, --xml           Produce XML output
  --line-numbers      Write line numbers for errors.
  -L, --skip-line-numbers
                      Don't write line number for errors. WARNING: -L is
                      deprecated, use long version of this option instead.
  -n, --unbuffered    Flush buffer after each query.
  --column-names      Write column names in results.
  -N, --skip-column-names
                      Don't write column names in results. WARNING: -N is
                      deprecated, use long version of this options instead.
  -O, --set-variable=name
                      Change the value of a variable. Please note that this
                      option is deprecated; you can set variables directly with
                      --variable-name=value.
  --sigint-ignore     Ignore SIGINT (CTRL-C)
  -o, --one-database  Only update the default database. This is useful for
                      skipping updates to other database in the update log.
  -p, --password[=name]
                      Password to use when connecting to server. If password is
                      not given it's asked from the tty.
  -W, --pipe          Use named pipes to connect to server.
  -P, --port=#        Port number to use for connection or 0 for default to, in
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
                      /etc/services, built-in default (3306).
  --prompt=name       Set the mysql prompt to this value.
  --protocol=name     The protocol of connection (tcp,socket,pipe,memory).
  -q, --quick         Don't cache result, print it row by row. This may slow
                      down the server if the output is suspended. Doesn't use
                      history file.
  -r, --raw           Write fields without conversion. Used with --batch.
  --reconnect         Reconnect if the connection is lost. Disable with
                      --disable-reconnect. This option is enabled by default.
  -s, --silent        Be more silent. Print results with a tab as separator,
                      each row on new line.
  --shared-memory-base-name=name
                      Base name of shared memory.
  -S, --socket=name   Socket file to use for connection.
  --ssl               Enable SSL for connection (automatically enabled with
                      other flags). Disable with --skip-ssl.
  --ssl-ca=name       CA file in PEM format (check OpenSSL docs, implies
                      --ssl).
  --ssl-capath=name   CA directory (check OpenSSL docs, implies --ssl).
  --ssl-cert=name     X509 cert in PEM format (implies --ssl).
  --ssl-cipher=name   SSL cipher to use (implies --ssl).
  --ssl-key=name      X509 key in PEM format (implies --ssl).
  --ssl-verify-server-cert
                      Verify server's "Common Name" in its cert against
                      hostname used when connecting. This option is disabled by
                      default.
  -t, --table         Output in table format.
  -T, --debug-info    Print some debug info at exit.
  --tee=name          Append everything into outfile. See interactive help (\h)
                      also. Does not work in batch mode. Disable with
                      --disable-tee. This option is disabled by default.
  --no-tee            Disable outfile. See interactive help (\h) also. WARNING:
                      option deprecated; use --disable-tee instead
  -u, --user=name     User for login if not current user.
  -U, --safe-updates  Only allow UPDATE and DELETE that uses keys.
  -U, --i-am-a-dummy  Synonym for option --safe-updates, -U.
  -v, --verbose       Write more. (-v -v -v gives the table output format).
  -V, --version       Output version information and exit.
  -w, --wait          Wait and retry if connection is down.
  --connect_timeout=# Number of seconds before connection timeout.
  --max_allowed_packet=#
                      Max packet length to send to, or receive from server
  --net_buffer_length=#
                      Buffer for TCP/IP and socket communication
  --select_limit=#    Automatic limit for SELECT when using --safe-updates
  --max_join_size=#   Automatic limit for rows in a join when using
                      --safe-updates
  --secure-auth       Refuse client connecting to server if it uses old
                      (pre-4.1.1) protocol
  --show-warnings     Show warnings after every statement.

Default options are read from the following files in the given order:
C:\Windows\my.ini C:\Windows\my.cnf C:\my.ini C:\my.cnf C:\MySQL\MySQL Server 5.0\my.ini C:\MySQL\MySQL Server 5.0\my.cnf
The following groups are read: mysql client
The following options may be given as the first argument:
--print-defaults   Print the program argument list and exit
--no-defaults      Don't read default options from any options file
--defaults-file=#   Only read default options from the given file #
--defaults-extra-file=# Read this file after the global files are read

Variables (--variable-name=value)
and boolean options {FALSE|TRUE}  Value (after reading options)
--------------------------------- -----------------------------
auto-rehash                       TRUE
character-sets-dir                (No default value)
default-character-set             latin1
comments                          FALSE
compress                          FALSE
database                          (No default value)
delimiter                         ;
vertical                          FALSE
force                             FALSE
named-commands                    FALSE
local-infile                      FALSE
no-beep                           FALSE
host                              (No default value)
html                              FALSE
xml                               FALSE
line-numbers                      TRUE
unbuffered                        FALSE
column-names                      TRUE
sigint-ignore                     FALSE
port                              3306
prompt                            mysql>
quick                             FALSE
raw                               FALSE
reconnect                         FALSE
shared-memory-base-name           (No default value)
socket                            (No default value)
ssl                               FALSE
ssl-ca                            (No default value)
ssl-capath                        (No default value)
ssl-cert                          (No default value)
ssl-cipher                        (No default value)
ssl-key                           (No default value)
ssl-verify-server-cert            FALSE
table                             FALSE
debug-info                        FALSE
user                              root
safe-updates                      FALSE
i-am-a-dummy                      FALSE
connect_timeout                   0
max_allowed_packet                16777216
net_buffer_length                 16384
select_limit                      1000
max_join_size                     1000000
secure-auth                       FALSE
show-warnings                     FALSE


un peu d'aide serait la bienvenue
Cdt,

JeAn-PhI
JeAn-PhI77
Stagiaire WDF
 
Messages: 3
Enregistré le: Mar 8 Sep 2015 18:02

Message non lupar R&B » Jeu 17 Sep 2015 18:07

Bonjour,
et désolé pour le retard à l'allumage...

il est important de noter que les commandes lancée ne sont pas des commandes BATCH mais shell.
Par conséquent, pour lancer votre commande, je vous invite à programmer la création d'un fichier batch qui comporte la ligne de commande souhaitée.

Attention à l'interprétation "DOS" des chemins comportant des espaces. il faut encadrer ces chemins pas des guillemets :
Code: Tout sélectionner
"C:\MySQL\MySQL Server 5.0\bin\mysql.exe -u LOGIN -pMOT_DE_PASSE < CHEMIN DU FICHIER DU DUMP *.sql"
R&B
Administrateur WDForge
 
Messages: 31
Enregistré le: Jeu 5 Mar 2015 23:21

Message non lupar JeAn-PhI77 » Lun 21 Sep 2015 15:42

bonjour,

merci pour l'info mais je l'avais déjà mis en oeuvre, je voulais ne plus voir la fenêtre de console, je vais faire avec alors..
dommage
Cdt,

JeAn-PhI
JeAn-PhI77
Stagiaire WDF
 
Messages: 3
Enregistré le: Mar 8 Sep 2015 18:02

Message non lupar R&B » Mar 22 Sep 2015 11:24

Re,
Attention, je pense m'être mal fait comprendre.
le batch est généré par votre programme et est lancé par la commande passé à la classe.

je vous invite à donc faire comme suit :
Code: Tout sélectionner
lc_CommandeBatch est une chaine = "C:\MySQL\MySQL Server 5.0\bin\mysql.exe -u LOGIN -pMOT_DE_PASSE < CHEMIN DU FICHIER DU DUMP *.sql"

// Génère le .bat
FSauveTexte(lc_Commande, "CMD.bat")

// Crée la commande shell
lc_Commande est une chaine = "CMD.BAT > CMD.txt"

// Initialise la commande
oExecute:CmdInit()

// Affecte la commande
oExecute:SetCmd(lc_Commande)

// Déclenche la commande
ln_Res = oExecute:ExécuterCmd()
...
R&B
Administrateur WDForge
 
Messages: 31
Enregistré le: Jeu 5 Mar 2015 23:21

Message non lupar Green_Angels » Dim 20 Déc 2015 18:00

Bonjour,

Merci d'avoir réalisé PRJ_CLA_Console.
Je fonctionne encore avec cWDDos qui répond bien à mes attentes.
Existe-t-il finalement un moyen de stopper une commande ?

Concrètement, comment puis-je stopper "proprement" ce processus, après un certain temps par exemple ?
Code: Tout sélectionner
MaLigneDeCommande.CommandLine_Let("ping -t 8.8.8.8")
MaLigneDeCommande.ExecuteCommand()


Le but est d'ajouter un timeout à une commande de mon programme.

Merci d'avance.
Green_Angels
Stagiaire WDF
 
Messages: 1
Enregistré le: Dim 20 Déc 2015 17:42


Retourner vers Ressources

cron