Accueil > Forum > > > > Programme DOS et Delphi
Programme DOS et Delphi
jeudi 5 février 2004 à 22:00:06 |
Programme DOS et Delphi

manu00
|
Bonjour, J'ai une super colle pour vous... :-) j'aurais besoin d'un petit coup de main pour faire 2 choses: -D'abord pour pouvoir recuperer le resultat d'un programme DOS dans un programme Delphi... exemple: ================================== C:\> bonjour.exe "Bonjour, vous venez de lancer le programme" ================================== Et je voudrais récuperer dans mon soft delphi la chaine => "Bonjour, vous venez de lancer le programme" Savez vous comment faire ? -Ensuite comme c'est pas tres propre un programme comme ca... j'aimerai trouver une solution pour que ce programme DOS soit fondu dans mon soft delphi... C'est a dire, que l'utilisateur ne puisse pas se douter de sa présence... Bon je ne sais pas si c'est faisable, mais y'a peut etre un moyen de le mettre quand meme dans mon soft delphi et de l'extracter dans un repertoire temporaire en vue de l'utiliser... Enfin, la c'est encore flou... Merci pour votre aide précieuse !!! Manu
|
|
jeudi 5 février 2004 à 22:57:05 |
Re : Programme DOS et Delphi

manu00
|
Bon, pour la premiere etape, c'est OK, j'ai trouvé ce code la: ====================== procedure TForm1.Button1Click(Sender: TObject); procedure RunDosInMemo(DosApp:String;Aedit:TEdit) ; const ReadBuffer = 2400; var Security : TSecurityAttributes; ReadPipe,WritePipe : THandle; start : TStartUpInfo; ProcessInfo : TProcessInformation; Buffer : Pchar; BytesRead : DWord; Apprunning : DWord; begin With Security do begin nlength := SizeOf(TSecurityAttributes) ; binherithandle := true; lpsecuritydescriptor := nil; end; if Createpipe (ReadPipe, WritePipe, @Security, 0) then begin Buffer := AllocMem(ReadBuffer + 1) ; FillChar(Start,Sizeof(Start),#0) ; start.cb := SizeOf(start) ; start.hStdOutput := WritePipe; start.hStdInput := ReadPipe; start.dwFlags := STARTF_USESTDHANDLES + STARTF_USESHOWWINDOW; start.wShowWindow := SW_HIDE;
if CreateProcess(nil, PChar(DosApp), @Security, @Security, true, NORMAL_PRIORITY_CLASS, nil, nil, start, ProcessInfo) then begin repeat Apprunning := WaitForSingleObject (ProcessInfo.hProcess,100) ; Application.ProcessMessages; until (Apprunning <> WAIT_TIMEOUT) ; Repeat BytesRead := 0; ReadFile(ReadPipe,Buffer[0], ReadBuffer,BytesRead,nil) ; Buffer[BytesRead]:= #0; OemToAnsi(Buffer,Buffer) ; AEdit.Text := AEdit.text + String(Buffer) ; until (BytesRead < ReadBuffer) ; end; FreeMem(Buffer) ; CloseHandle(ProcessInfo.hProcess) ; CloseHandle(ProcessInfo.hThread) ; CloseHandle(ReadPipe) ; CloseHandle(WritePipe) ; end; end;
begin {button 1 code} edit1.Clear; RunDosInMemo('prog.exe',Edit1) ; end; ================
Je le met , ca pourra servir pour ceux qui chercheront ca comme moi...
Alors par contre, je reste sur ma deuxieme question..Comment dissimuler ce programme DOS dans mon soft (ou GUI, appelez ca comme vous voulez)
Any solution ?
Merci
M.
|
|
vendredi 6 février 2004 à 19:48:21 |
Re : Programme DOS et Delphi

Delphiprog
|
Pour le source donné ci-dessus, la page de l'excellent site web était surement : http://delphi.about.com/bltip0201.htm Je me trompe ? En tous cas, il ne fait apparaitre aucune fenêtre DOS. Ce qui répondrait à la deuxième question. May Delphi be with you
|
|
vendredi 6 février 2004 à 20:24:04 |
Re : Programme DOS et Delphi

manu00
|
Oui, c'est bien la que je l'ai trouvé... Mais ca ne repond pas a ma question... En fait, comme j'utilise un programme dos en + de mon soft delphi, ca me fait 2 programme (un peu pas propre)
Et donc, moi ce que je veux faire, c'est fondre ce programme dos a l'interieur de mon soft en delphi pour qu'il s'execute de la meme façon mais si possible sans se mettre sur le disque dur...mais si je fais de la science fiction la, je pense aussi a trouver un soft pour merger les 2 softs et qu'ils se decompresse dans un rep temporaire
Merci
M.
|
|
jeudi 5 août 2004 à 16:02:02 |
Re : Programme DOS et Delphi

Artegon
|
j' ai peu etre une solution pour toi... Le decompressement temporaire ( dossier temp de windows ) est la solution la plus simple a mon avis... JE NE SUIS PAS SURE DE L4 ORTHOGRAPHE DES VARIABLE, ...
if (IOresult>0) then do ... else AssignFile(F,tempdir+'xxx.bat'); Rewrite(F); Writeln(F,'...'); end;
Voila, IOresult indique si le programe existe ou pas... Si il existe, tu l' appele ( Shekkexecute, ou autyre ) Si il n' existe pas, tu le cree, et ensuite tu l' appele...
Apres, reste a trouver un cmd qui efface le dossier temp si tu ne veux pas laisser de trace de ton fichier bat
J' espere que ce que j' ai dit est correcte :) et que cela t' a aider ou mis sur la voie ...
Artegon
|
|
Cette discussion est classée dans : programme, lancer, delphi, soft, dos
Répondre à ce message
Sujets en rapport avec ce message
Lancer un exe depuis un autre programme [ par esigvb ]
Bonjour,Voilà mon probleme, j'ai un programme en Delphi qui doit lancer un autre programme en Delphi.Les deux logiciels fonctionnent très bien séparém
lancer un programme delphi a partir du CMD? [ par abdousoft ]
Salut j'ai realiser un programme avecdelphi .EX:'gestion.exe'!comment lancer a partir du "Invite de commandes" -->"CMD"Par Ex:lorsq'on cherche a lan
ralentissement d'un calcul itéré sous EDI Delphi 2009, mais pas sous DOS [ par jcornuet ]
J'utilise Delphi 2009 avec lequel j'ai rédigé un programme en mode console dans lequel je répète 100 fois le même calcul. Ce calcul utilise à un momen
delphi sos [ par luc7010 ]
helloje possède un programme fait par mon informaticien : une sorte de gros juke box vidéo (aki.exe)le problème c'est que l'informaticien est maintena
Exécuter un programme Delphi 5 sous Delphi 2007 [ par fonkou ]
Bonjour ou bonsoir chers Membre du ForumNous travaillons avec Delphi 5 Entreprise depuis plus de 7 ans (en faite nous avons commencé avec Delphi 2). N
Projet de deplacement des musiques [ par skygirl2007 ]
Bonjour,Voila jai fais 2 semaine de delphi tout les jours dans ma formation mais cest deja fini. J'ai pu je dirai apprendre les basesmais pas assez po
quel base de donné je doit choisir [ par Whatabout ]
Bonjour, je veu faire un petit programme sous delphi " un logiciel " et se logiciel a une BDD , mon broblem est: quel base de donné je doit choisir 'o
pour les experts de delphi [ par Arsofts ]
j'ai cré un programme qui relie une base de données access avec le delphi en utilisant le ADO mais en executant le programme un message d'erreur m'app
Assigner une icone au programme [ par Jeoffrey54 ]
Hello !Je suis un débutant en Delphi, j'utilise Delphi 5 (obligé car très utilisé à mon lycée), et j'ai déjà conçu ma petite application certes très m
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|