URGENT - AVANT 13h... Executer une commande dos avec un paramétre [Résolu]

Signaler
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010
-
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010
-
Bonjour a tous,
Pour etre bref, mon but:
Je parcours un dossier contenant des pdf et j'exécute la commande "pdftotext nomfic" pour chaque fichier afin de créer le txt correspondant au pdf.
(nb:Evidement pdftotext est une commande a télécharger)

PS: Je n'ais besoin de récupérer que la première ligne du fichier text créer...

question commant executer la commande avec le paramétre du nom du fichier.

c'est extrémement urgent ne me renvoyer pas sur le forum je fait que ca, en gros passé 13h le poste pourra être passer en délestage (désolé ma réunion été ce matin)

Mon code:
Option Explicit
dim Contenu,FSys,MonFic,Msg,comm,strfile,x,Source,Destination
dim ofolder,vbHide,Shell

comm="pdftotext "
Source = "C:\Temp"
Destination = "C:\Temp"


'Declaration permettant entre autre de charger le fichier à lire
Set FSys = CreateObject("Scripting.FileSystemObject")
'Declaration des objet d'application permettant entre autre de charger le contenu d'un repertoir.
'Set oApp = CreateObject("Shell.Application")
Set oFolder = FSys.GetFolder(Source)



for each strFile in oFolder.Files
Set MonFic = FSys.OpenTextFile(strFile, 1)
x = Shell(comm & strFile, vbHide)
Contenu = strFile.ReadLine
next

9 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
on délimite une chaine avec des guillemets
pour placer une guillements dans une chaine, faut la doubler...

Bonjour "l'ami", tu vas ?
se note:
"Bonjour ""l'ami"", tu vas ?"

tout bêtement.

for each strFile in oFolder.Files
oShell.run "pdftoText ""C:\Temp" & strFile.name & """"
next

ce qui donnera bien, par exemple

pdftoText "C:\Temp\fichier.pdf"
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010

Apres des recherche sur google me renvoyant ici :s
Je n'arrive pas a passer le paramètre pdftotext nom de fichier ....
Apres il me restera a purger tout le contenu du fichier txt creer sauf la premiere ligne...

Voila mon nouveau code:
Option Explicit
dim Contenu,FSys,MonFic,Msg,comm,strfile,x,Source,Destination
dim ofolder,oShell

comm="pdftotext "
Source = "C:\Temp"
Destination = "C:\maSauvegarde.zip"

'Declaration du shell utile pour lancer une commande dos
Set oShell=createObject ("WScript.Shell" )
'Declaration permettant entre autre de charger le fichier à lire
Set FSys = CreateObject("Scripting.FileSystemObject")
'Declaration des objet d'application permettant entre autre de charger le contenu d'un repertoir.
'Set oApp = CreateObject("Shell.Application")
Set oFolder = FSys.GetFolder(Source)



for each strFile in oFolder.Files
Set MonFic = FSys.OpenTextFile(strFile, 1)
oShell.run comm & each.name
'Contenu = strFile.ReadLine
next
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010

Excuser moi mauvais copié coller je remarque....

for each strFile in oFolder.Files
'Set MonFic = FSys.OpenTextFile(strFile, 1)
oShell.run comm & strFile.name
next
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
..... y'a rien a faire, normallement

juste a bien placer les guillemets autour du nom des fichiers.

Shell "C:\applications\pdftoText.exe ""C:\Temp\In.pdf"" ""C:\Temp\Out.txt"""

ou, avec des variables

Shell "C:\applications\pdftoText.exe """ & sIN & """ """ & sOUT & """"
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010

Voila mon nouveau code.
Ca tourne sans probléme mais les fichier ne se créer pas...
Merci Renfield j'execute ca sur le champ car ca a l'aire de répondre a ma demande .
Sinon pour ce qui cherche j'ai rajouter command /c dans la variable contenant ma commande dos.


Option Explicit
dim Contenu,FSys,MonFic,Msg,comm,strfile,x,Source,Destination
dim ofolder,oShell

comm="command /c pdftotext "
Source = "C:\Temp"
Destination = "C:\maSauvegarde.zip"

'Declaration du shell utile pour lancer une commande dos
Set oShell=createObject ("WScript.Shell" )
'Declaration permettant entre autre de charger le fichier à lire
Set FSys = CreateObject("Scripting.FileSystemObject")
'Declaration des objet d'application permettant entre autre de charger le contenu d'un repertoir.
'Set oApp = CreateObject("Shell.Application")
Set oFolder = FSys.GetFolder(Source)



for each strFile in oFolder.Files
'Set MonFic = FSys.OpenTextFile(strFile, 1)

oShell.CurrentDirectory = Source
oShell.run comm & strFile.name

'wscript.echo strFile.name
'Contenu = strFile.ReadLine
next
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
pourquoi ajouter command.exe ?
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010

Renfield > Dur dur à placer les guillemets tu peux pas m'aider?

Je n'ai pas besoin d'avoir une sortie avec l'utilisation que j'ai de pdftotext je doit l'utiliser comme ca:

pdftotext nomfic.pdf

lui me crée un txt avec seulement la première page du fichier pdf, et vu que je n'ais besoin que de la première ligne, je dois ensuite purger le contenu du fichier txt...

J'ai mis ma commande dans une variable :
comm="command /c pdftotext "
Ensuite dans une boucle qui parcourt le dossier:

for each strFile in oFolder.Files
oShell.run comm "& strFile.name &"
oShell "C:\WINDOWS\pdftoText.exe ""C:\Temp" "&strFile.name&"" "
'Bon je retire tout mes autres tests ... je comprend pas le principe faut fermer 'les guillemets avec des guillemet?? je sais pas peut etre la pression qui me 'fait réfléchir a l'envers :s
next
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010

Alors ca je sais pas mais tous ce que je peux dire c'est que je l'ai retrouver dans le forum et ca me retiré des erreurs...
Messages postés
52
Date d'inscription
mercredi 28 juin 2006
Statut
Membre
Dernière intervention
1 mars 2010

Merci beacoup, c'est vraiment sympa ^^
=====> You are my rescuer ^^
c'est marrant j'avais l'impression d'avoir compris ca ... c'est la pression qui fait cette effet je crois...

Me reste plus qu'a lire uniquement la première ligne des fichiers txt... enfin réécrire ces fichier en ne conservant que la première ligne...