cs_antho2005
Messages postés150Date d'inscriptionsamedi 8 avril 2006StatutMembreDernière intervention 1 mai 2012
-
20 juil. 2006 à 21:46
monkeyvb78
Messages postés1Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention21 mars 2011
-
21 mars 2011 à 20:41
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
monkeyvb78
Messages postés1Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention21 mars 2011 21 mars 2011 à 20:41
Il est aussi possible de passer par une ligne de commande (testé sous Vista):
'rep contient la chaine à copier
WshShell.Run "cmd.exe /C echo " & rep & "| clip", 0, TRUE
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 29 juin 2010 à 15:36
possible que cela vienne de là, effectivement
stubbyone2
Messages postés12Date d'inscriptionlundi 28 mai 2007StatutMembreDernière intervention15 octobre 2008 29 juin 2010 à 15:04
Bonjour à tous!
Ton script fonctionne très bien sur XP SP3 mais sur Windows Server 2003 R2 :-( non!
Avez vous une idée de pourquoi? je sais que sur win server l'internet bloque certaines choses mais je ne trouve rien.
Merci d'avance
Stubbyone
cs_Corvvin
Messages postés14Date d'inscriptionvendredi 22 mai 2009StatutMembreDernière intervention16 août 2009 23 mai 2009 à 13:10
Le peu de solutions alternatives proposées maintient, à mon avis, ce sujet dans l'actualité.
Le script source fonctionne très bien sous Windows XP SP2. J'ai constaté qu'il était plus rapide lorsque IE est fermé (raison de plus pour utiliser Firefox comme navigateur [wink]).
En revanche, la solution de l'ami Antho, pour séduisante qu'elle soit, peut provoquer à peu près... n'importe quoi sur votre ordinateur ! Gare !
Avec le même principe, en remplaçant Notepad par Charmap... et VBS par Super-Macro on obtient quelque chose à priori sans danger, et assez rapide (à défaut d'être très élégant).
guilhemmartincpp
Messages postés25Date d'inscriptionmercredi 17 septembre 2003StatutMembreDernière intervention 9 janvier 2008 12 sept. 2007 à 14:06
Ok thanks.
Si je trouve "plus universel", je reposterai ici.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 10 sept. 2007 à 07:10
doit y avoir quelques autres facons de faire, comme de piloter Office, mais ca risuqe de declencher le même genre d'alertes, a voir...
disons qu'avec IE, on est plus sur que c'est sur le poste
guilhemmartincpp
Messages postés25Date d'inscriptionmercredi 17 septembre 2003StatutMembreDernière intervention 9 janvier 2008 4 sept. 2007 à 22:08
Sympa la source !
On est obligé de passer par l'objet IE cependant pour utiliser le presse-papier ?
Sous Vista (pas testé sous XP), ça provoque du coup la boîte de dialogue "Voulez-vous autoriser l'accès de cette page web au presse papier ?".
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 27 juil. 2006 à 09:00
piloter la chose par des SendKeys est franchement risqué...
rien ne certifie que NotePad va bien conserver le Focus
de plus, le wscript.sleep 150
ne nous garantit absolument rien...
cs_antho2005
Messages postés150Date d'inscriptionsamedi 8 avril 2006StatutMembreDernière intervention 1 mai 20123 20 juil. 2006 à 21:56
j'ai oublié pour copier apres la ligne variable.SendKeys ("%{F4}") il faut mettre : variable.SendKeys ("{right}{enter}") 'pour faire ne pas enregistrer
on pourrais aussi mettre : variable.SendKeys ("+n") ' = maj + n
@+
Antho2005
cs_antho2005
Messages postés150Date d'inscriptionsamedi 8 avril 2006StatutMembreDernière intervention 1 mai 20123 20 juil. 2006 à 21:46
Salut,
pour faire copier on peut tout simplent faire :
Set variable=CreateObject("WScript.Shell") 'defini la variable variable
variable.Run("notepad") 'ouvre le bloc note
wscript.sleep 150 'attend 150 millisecondes que le programme s'ouvre
montexte = "Mon texte à copier" 'rentrez votre texte
variable.SendKeys (montexte) 'marque le texte dans la fenetre active (normalement le bloc note)
longueur = len(montexte) 'defini la longueur de la chaine
For i 1 to longueur 'i de 1 a la longueur de la chaine
variable.SendKeys ("+{left}") 'fait maj + fleche gauche (donc selectionner) tant qu'il y a des lettres dans la chaine
Next 'fin de la boucle
variable.SendKeys ("^c") 'fait ctrl + c (donc copier) sur le texte selectionné
variable.SendKeys ("%{F4}") 'ferme le bloc note
'Et voilà votre texte est copié.
et pour coller :
Set variable=CreateObject("WScript.Shell") 'defini la variable variable
variable.Run("notepad") 'ouvre le bloc note
wscript.sleep 150 'attend 150 millisecondes que le programme s'ouvre
variable.SendKeys ("Le texte est : " & chr(34)) 'Marque Votre texte copié est : "
variable.SendKeys ("^v") 'fait ctrl + v (donc coller) à la suite du texte
variable.SendKeys (chr(34)) 'ferme les guillemets
'Et voilà vous avez le bloc note ouvert avec marqué : 'Votre texte copié est : "Mon texte à copier" ' par exemple
21 mars 2011 à 20:41
'rep contient la chaine à copier
WshShell.Run "cmd.exe /C echo " & rep & "| clip", 0, TRUE
29 juin 2010 à 15:36
29 juin 2010 à 15:04
Ton script fonctionne très bien sur XP SP3 mais sur Windows Server 2003 R2 :-( non!
Avez vous une idée de pourquoi? je sais que sur win server l'internet bloque certaines choses mais je ne trouve rien.
Merci d'avance
Stubbyone
23 mai 2009 à 13:10
Le script source fonctionne très bien sous Windows XP SP2. J'ai constaté qu'il était plus rapide lorsque IE est fermé (raison de plus pour utiliser Firefox comme navigateur [wink]).
En revanche, la solution de l'ami Antho, pour séduisante qu'elle soit, peut provoquer à peu près... n'importe quoi sur votre ordinateur ! Gare !
Avec le même principe, en remplaçant Notepad par Charmap... et VBS par Super-Macro on obtient quelque chose à priori sans danger, et assez rapide (à défaut d'être très élégant).
12 sept. 2007 à 14:06
Si je trouve "plus universel", je reposterai ici.
10 sept. 2007 à 07:10
disons qu'avec IE, on est plus sur que c'est sur le poste
4 sept. 2007 à 22:08
On est obligé de passer par l'objet IE cependant pour utiliser le presse-papier ?
Sous Vista (pas testé sous XP), ça provoque du coup la boîte de dialogue "Voulez-vous autoriser l'accès de cette page web au presse papier ?".
27 juil. 2006 à 09:00
rien ne certifie que NotePad va bien conserver le Focus
de plus, le wscript.sleep 150
ne nous garantit absolument rien...
20 juil. 2006 à 21:56
on pourrais aussi mettre : variable.SendKeys ("+n") ' = maj + n
@+
Antho2005
20 juil. 2006 à 21:46
pour faire copier on peut tout simplent faire :
Set variable=CreateObject("WScript.Shell") 'defini la variable variable
variable.Run("notepad") 'ouvre le bloc note
wscript.sleep 150 'attend 150 millisecondes que le programme s'ouvre
montexte = "Mon texte à copier" 'rentrez votre texte
variable.SendKeys (montexte) 'marque le texte dans la fenetre active (normalement le bloc note)
longueur = len(montexte) 'defini la longueur de la chaine
For i 1 to longueur 'i de 1 a la longueur de la chaine
variable.SendKeys ("+{left}") 'fait maj + fleche gauche (donc selectionner) tant qu'il y a des lettres dans la chaine
Next 'fin de la boucle
variable.SendKeys ("^c") 'fait ctrl + c (donc copier) sur le texte selectionné
variable.SendKeys ("%{F4}") 'ferme le bloc note
'Et voilà votre texte est copié.
et pour coller :
Set variable=CreateObject("WScript.Shell") 'defini la variable variable
variable.Run("notepad") 'ouvre le bloc note
wscript.sleep 150 'attend 150 millisecondes que le programme s'ouvre
variable.SendKeys ("Le texte est : " & chr(34)) 'Marque Votre texte copié est : "
variable.SendKeys ("^v") 'fait ctrl + v (donc coller) à la suite du texte
variable.SendKeys (chr(34)) 'ferme les guillemets
'Et voilà vous avez le bloc note ouvert avec marqué : 'Votre texte copié est : "Mon texte à copier" ' par exemple