rebcao Posté(e) le 6 décembre 2010 Posté(e) le 6 décembre 2010 Bonsoir à Toutes et à Tous, J'ai un très vieux programme .EXE (1889) très simple que j'utilise pratiquement tous les jours pour faire du RECHERCHER-REMPLACER en BATCH dans un fichier texte... Hors, qui peut le plus peut pas le moins !!!!!!! Avec SEVEN 64 bits, il me jette parce c'est un programme 16 bits !... Existe-t-il une pirouette pour que le système 64 bits accepte quand même d'exécuter le programme ou un émulateur ? C'est fou ça... Merci de vos réponses. Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
jeanch Posté(e) le 6 décembre 2010 Posté(e) le 6 décembre 2010 Bonsoir,Une proposition (sans garantie donc puisque non testée sur Seven) :- clic droit sur le fichier ;- propriété ;- compatibilité ;- mode de compatibilité ;- choisir un mode et tester. [Edité le 6/12/2010 par jeanch]
(gile) Posté(e) le 6 décembre 2010 Posté(e) le 6 décembre 2010 Salut, Sur une version Windows 7 pro (ou plus), on peut installer le "mode XP" sur une machine virtuelle. C'est peut-être une solution, mais je n'en suis pas sûr du tout. Suivant comment a été compilé cet exe (dans quel langage) il peut être définitivement incompatible avec un processeur 64 bits (d'où les versions spécifiques 32 bits et 64 bits pour les exe,dll, arx...). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 6 décembre 2010 Auteur Posté(e) le 6 décembre 2010 Bonsoir, Merci pour vos réponses. Changer les propriétés de compatibilité ne marche pas... Je ne peux pas installer quoi que ce soit, il faut simplement que le fichier s'exécute comme avant... Il existe peut-être un programme équivalent ? Un RECHERCHER-REMPLACER dans un fichier texte en mode BATCH! Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
Carboleum Posté(e) le 6 décembre 2010 Posté(e) le 6 décembre 2010 Je sais pas si ca va te convenir, car tu ne peux pas installer quoi que ce soit, mais tu peux toujours aller voir la commande Unix sed. Elle existe en version "sous windows", et tourne en ligne de commande. http://www.siteduzero.com/tutoriel-3-287602-la-commande-sed.html Voir tout en bas pour windows. Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
fauxsuisse Posté(e) le 7 décembre 2010 Posté(e) le 7 décembre 2010 Salut rebcao, Personnellement j'ai déjà testé le mode compatible XP sous Sevent 64bits ça fonctionne pour les programme qui ne sont pas compatible avec le 64bits je l'ai testé avec le VPN Client de Sisco, ça fonctionne mais bon c'est pas terrible car c'est un peu long au chargement, par ce que en gros Windows 7 installe un arrière plan une version Windows XP et lorsque tu lances le programme voulu Seven commute en XP pour faire fonctionner le programme mais attention les répertoires comme programme Files User Windows etc, ne sont pas les mêmes donc ça se mélange un peu les pattes, en gros ça fonctionne mais perso je l'utiliserai vraiment que pour dépanner par ce que ce n'est pas terrible.
Fracker Posté(e) le 7 décembre 2010 Posté(e) le 7 décembre 2010 Bonjour Christian, [...] un très vieux programme .EXE (1889) [...] Tu m'étonnes. :o 1889 ? Si tu as SEVEN 64 bits pro, il y a le mode « Windows XP » qui est en 32 bits. Là, tu peux lancer du programme 16 bits apparemment à travers la machine virtuelle. Source : http://www.presence-pc.com/actualite/16-bits-64-bits-36442/ Sinon, si tu n'as pas la version PRO, tu peux toujours installer VirtualBOX et un XP 32bits. Ici, j'ai XP PRO 64 bits sous lequel tourne AutoCAD 2010 + covadis.Et VirtualBOX avec XP PRO 32 bits pour faire tourner SewerCAD 2000 (car impossible de le faire tourner sur la 64 bits malgré le Windows on Windows).J'ai toujours un dossier qui sert à faire le lien entre les deux. @+ --Arthur
Fracker Posté(e) le 7 décembre 2010 Posté(e) le 7 décembre 2010 Re, Et çà : http://www.x64bitdownload.com/downloads/t-64-bit-textcrawler-download-qotrnwiq.html ? (textcrawler) @+ --Arthur
rebcao Posté(e) le 7 décembre 2010 Auteur Posté(e) le 7 décembre 2010 Bonsoir, Je vous remercie pour toutes ces réponses, mais j'insiste sur le fait que je ne veux rien installer ! Au même titre si je tape la commande DIR (DOS) via un BATCH ça doit marcher... Il faut absolument que la commande fonctionne en mode commande via la fenêtre DOS... qui elle est toujours bien présente... Pour SED, il faut aussi installer quelque chose. Il faut vraiment que cet exécutable fonctionne si l'on appel le PROGRAMME... exemple, le programme serait installé dans un dossier C:\PROG et le programme s'appelle REMPLACE.EXE syntaxe = c:\PROG\REMPLACE.EXE CHAINE1 CHAINE2 FichierTEXTE Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
bonuscad Posté(e) le 7 décembre 2010 Posté(e) le 7 décembre 2010 je ne veux rien installer ! Alors essayes de te retourner vers les commandes en terminal DOS. Avec Find, FindStr, Dir, Sort, Edit, Copy, (ou Print, Type, je sais plus...) Toutes ces commandes ont de l'aide dans le treminal (option /? de la commande: if /? par exemple est très intéressant pour les transmissions avec les %1, %2, Shift, les caractères de redirections " > et < " Comme les véritables fichiers BATCH (Traitements par lots: .BAT) de l'époque.Tu as aussi la commande HELP|More(dans la console) pour l'aide générale. Je l'ai eu fais il y a bien longtemps, (avec même l'utilisation d' ErrorLevel et des conditions If, Else ou encore For GoTo) Au même titre si je tape la commande DIR (DOS) via un BATCH ça doit marcher... J'avais trouvé cela très laborieux à l'époque. Mais cela doit être faisable (si tu en as eu fais quelque peu...)Pour ma part je n'ai pas de système 64 bits, je ne peux même pas tester et imaginer cela sous un OS en 64. Le plus simple (qu'un programmeur généreux te refasse un EXE en mode 64), ou en trouver un gratuit en open source, une recherche s'impose. ;) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Carboleum Posté(e) le 7 décembre 2010 Posté(e) le 7 décembre 2010 il existe des applications qui peuvent s'installer (aille le mot est dit ;-) sur une clef usb.googelise portable applications. tu trouvera peut-être un éditeur qui te satisfasse. Bonne chance ;-) Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
bonuscad Posté(e) le 7 décembre 2010 Posté(e) le 7 décembre 2010 Du coup j'ai cherché un peu et j'ai trouvé http://a.e.b.free.fr/remplace/index.htm J'ai essayé sous XP (32 :( ) et cela fonctionne bien (essayé avec des fichiers textes en ASCII) Compatible 64 ?? [Edité le 12/12/2010 par bonuscad] Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
rebcao Posté(e) le 12 décembre 2010 Auteur Posté(e) le 12 décembre 2010 Bonjour, Merci Bonuscad, mais le lien ne fonctionne pas ? Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
bonuscad Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 Bonjour , Un crochet ] en trop, j'ai édité le lien. Il est gratuit, en mode recherche pas besoin de s'enregistrer, tu teste si cela fonctionne en mode 64 .... Si oui, il faut s'enregistrer pour pouvoir effectuer les remplacements. Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
lecrabe Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 Hello Eastman Je t'ai envoye un utilitaire "search-replace" 32 bits a tester sous Win 64 ! SVP tu nous diras si ca marche ? Bon Dimanche, Le Decapode Autodesk Expert Elite Team
(gile) Posté(e) le 12 décembre 2010 Posté(e) le 12 décembre 2010 Salut, J'ai essayé un truc tout simple en .NET qui devrait donc fonctionner sous Windows XP, Vista, 7 en 32 ou 64 bits du moment que le Framework .NET 2.0 (ou supérieur) est installé. Je ne sais pas si ça correspond bien à ta demande, mais ça fonctionne sur Windows 7 64 bits. http://img.ahst.fr/data/images/replace.png La première expression lancée depuis le répertoire du fichier texte (C:\Users\Public\Document\) remplace toutes les occurrences de "Toto" par "Bibi".La seconde lancée depuis le répertoire contenant le fichier exe remplace toutes les occurrences de "Bibi" par "Titin" FindAndReplace.zipJe t'envoie le fichier parce qu'il semble que certains ont des problèmes pour téléchrager depuis mes pages perso. Le code pour ceux que ça intéresse : using System; using System.IO; using System.Text; namespace FindAndReplace { class Program { static void Main(string[] args) { if (args.Length != 3) Console.WriteLine("Nombre d'arguments incorrect"); else if (File.Exists(args[2])) { StringBuilder sb = new StringBuilder(); using (StreamReader reader = new StreamReader(args[2], Encoding.UTF8)) { sb.Append(reader.ReadToEnd()); } using (StreamWriter writer = new StreamWriter(args[2], false, Encoding.UTF8)) { writer.Write(sb.Replace(args[0], args[1]).ToString()); } } else Console.WriteLine("Fichier introuvable"); } } } Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
(gile) Posté(e) le 17 décembre 2010 Posté(e) le 17 décembre 2010 Alors ?... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Bonjour, OOPS, OOPS, je n'avais pas vu les réponses !!! Désolé :P J'étais à l'école toute la semaine... Je vais tester tout ça et te remercie déjà Une question on peut présenter l'argument 1 entre GUILLEMET s'il y a des espaces ? Et peut-être que \" permet d'utiliser le guillemet dans les chaines ? Encore merci à tous, je test et je reviens... Christian [Edité le 18/12/2010 par rebcao] Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
rebcao Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Re, Le Crabe je te remercie, mais après avoir cherché dans tous mes mails, je n'ai pas trouvé de Mail avec ton fichier ??? Curieux ?!... tu peux me le renvoyer ? Merci... Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
rebcao Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Re, Pour (Gile) ça marche très bien... ;) en mode commande tout ce qu'il de plus simple et efficace... :) Et je vais abuser, car mon ancien programme ajoutait une chaine DEVANT ou à la FIN de chaque enregistrement exemple : FINDANDREPLACE [surligneur] DEBUT[/surligneur] CHAINE-TEXTE FIC.TXT FINDANDREPLACE [surligneur] FIN [/surligneur] CHAINE-TEXTE FIC.TXT et un mode COPIE qui recopiait tout l'enregistrement une deuxième fois séparé par ###, exemple avec l'enregistrement : c:\temp\dessin.dwg devenait alors c:\temp\dessin.dwg[surligneur]###c:\temp\dessin.dwg[/surligneur] La syntaxe serait FINDANDREPLACE [surligneur] #COPIER# [/surligneur] FIC.TXT Ce serait possible d'ajouter ces conditions ? Tu m'envoies ta note... Je te confirme que [surligneur] \" [/surligneur]( \ guillement) permet bien d'utiliser le guillemet dans les chaines 1 ou 2 Génial, c'est presque le frère jumeau de mon vieux clou... Merci (Gile), tu ne serais pas de Marseille par hasard ? Christian [Edité le 18/12/2010 par rebcao] Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
(gile) Posté(e) le 18 décembre 2010 Posté(e) le 18 décembre 2010 Salut, Pour ignorer la casse, pas de problème, mais je ne comprends pas bien les autres demandes : Et je vais abuser, car mon ancien programme ajoutait une chaine DEVANT ou à la FIN de chaque enregistrement exemple : FINDANDREPLACE DEBUT CHAINE-TEXTE FIC.TXT FINDANDREPLACE FIN CHAINE-TEXTE FIC.TXT et un mode COPIE qui recopiait tout l'enregistrement une deuxième fois séparé par ###, exemple avec l'enregistrement : c:\temp\dessin.dwg devenait alors c:\temp\dessin.dwg###c:\temp\dessin.dwg La syntaxe serait FINDANDREPLACE #COPIER# FIC.TXT Est-ce bien :- si le premier argument est DEBUT, on ajoute la chaine (CHAINE-TEXTE) au début du fichier txt- si le premier argument est FIN, on ajoute la chaine (CHAINE-TEXTE) à la fin du fichier txt- si le premier argument est #COPIER#, on ajoute ### et le contenu du fichier à la fin de celui-ci- dans tous les autres cas, on remplace toutes les occurrences de la première chaîne (sans tenir compte de la casse) par la seconde. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Re, OUI c'est bien ça, exemple avec un enregistrement qui contient la ligne c:\temp\dessin.dwg avec la syntaxe FINDANDREPLACE [surligneur] #DEBUT#[/surligneur] "Mon_petit_toto " FIC.TXT donnerait [surligneur] Mon_petit_toto [/surligneur]c:\temp\dessin.dwg avec la syntaxe FINDANDREPLACE [surligneur]#FIN#[/surligneur] " Mon_grand_titi" FIC.TXT donnerait c:\temp\dessin.dwg[surligneur] Mon_grand_titi[/surligneur] avec la syntaxe FINDANDREPLACE [surligneur]#COPIER#[/surligneur] FIC.TXT donnerait c:\temp\dessin.dwg###[surligneur]c:\temp\dessin.dwg[/surligneur] J'ai mis le caractère # à chaque pour identifier l'option, car si je veux remplacer les mots FIN ou DEBUT par autre chose ça risque de mettre le bazarre... Tu n'avais pas répondu à ma question ! Tu es sur Marseille ? Merci Christian [Edité le 18/12/2010 par rebcao] Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
lecrabe Posté(e) le 18 décembre 2010 Posté(e) le 18 décembre 2010 Hello Christian & Gilles Attention Gilles, EastMan se renseigne ! C pour savoir si tu es Pastis ou Ricard ou Pastis de Marseille ou Pastis Artisanal ou etc Le Decapode (sous le soleil de la Loire avec -3 degres et ciel bleu) Autodesk Expert Elite Team
(gile) Posté(e) le 18 décembre 2010 Posté(e) le 18 décembre 2010 Salut, Voilà une nouvelle version qui devrait correspondre complètement à tes demandes. Remplace.zip. Et toujours le code source pour ceux que ça intéresse. using System; using System.IO; using System.Text; using System.Text.RegularExpressions; namespace FindAndReplace { class Program { static void Main(string[] args) { if (args.Length == 2 && args[0].ToUpper() == "#COPIER#") { string filename = args[1]; if (File.Exists(filename)) { try { StringBuilder sb = new StringBuilder(); using (StreamReader reader = new StreamReader(filename, Encoding.UTF8)) { string s; while ((s = reader.ReadLine()) != null) { sb.AppendLine(string.Format("{0}###{0}", s)); } } using (StreamWriter writer = new StreamWriter(filename, false, Encoding.UTF8)) { writer.Write(sb.ToString()); } } catch (Exception e) { Console.WriteLine("Le processus a échoué: " + e.Message); } } else Console.WriteLine("Fichier introuvable"); } else if (args.Length == 3) { string filename = args[2]; if (File.Exists(filename)) { try { string s; StringBuilder sb = new StringBuilder(); using (StreamReader reader = new StreamReader(filename, Encoding.UTF8)) { if (args[0].ToUpper() == "#DEBUT#") while ((s = reader.ReadLine()) != null) { sb.AppendLine(string.Format("{0}{1}", args[1], s)); } else if (args[0].ToUpper() == "#FIN#") while ((s = reader.ReadLine()) != null) { sb.AppendLine(string.Format("{0}{1}", s, args[1])); } else { s = reader.ReadToEnd(); Regex reg = new Regex(args[0], RegexOptions.IgnoreCase); sb.Append(reg.Replace(s, args[1])); } } using (StreamWriter writer = new StreamWriter(filename, false, Encoding.UTF8)) { writer.Write(sb.ToString()); } } catch (Exception e) { Console.WriteLine("Le processus a échoué: " + e.Message); } } else Console.WriteLine("Fichier introuvable"); } else Console.WriteLine("Nombre d'arguments incorrect"); } } } Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Re, Pour la fonction de remplacement tout fonctionne parfaitement. Par contre les OPTIONS #DEBUT# #FIN# et #COPIER#, il s'agissait de traiter chaque enregistrement du fichier. Ajouter au début et à la fin de toutes les lignes la même CHAINE et COPIER chaque ligne en ajoutant à la ligne son propre contenu séparé par ### Voici une exemple du résultat attendu avec le fichier source suivant : C:\Temp\_Bib_Meca.dwgC:\Temp\_Bib_schema_NMAT.dwgC:\Temp\SLD\DWG\arc.dwgC:\Temp\SLD\DWG\cercle.dwg Résultat avec #DEBUT#CHAINE-DEBUT C:\Temp\_Bib_Meca.dwgCHAINE-DEBUT C:\Temp\_Bib_schema_NMAT.dwgCHAINE-DEBUT C:\Temp\SLD\DWG\arc.dwgCHAINE-DEBUT C:\Temp\SLD\DWG\cercle.dwg Résultat avec #FIN#C:\Temp\_Bib_Meca.dwg CHAINE-FINC:\Temp\_Bib_schema_NMAT.dwg CHAINE-FINC:\Temp\SLD\DWG\arc.dwg CHAINE-FINC:\Temp\SLD\DWG\cercle.dwg CHAINE-FIN Résultat avec #COPIER#C:\Temp\_Bib_Meca.dwg###C:\Temp\_Bib_Meca.dwgC:\Temp\_Bib_schema_NMAT.dwg###C:\Temp\_Bib_schema_NMAT.dwgC:\Temp\SLD\DWG\arc.dwg###C:\Temp\SLD\DWG\arc.dwgC:\Temp\SLD\DWG\cercle.dwg###C:\Temp\SLD\DWG\cercle.dwg En tout cas, je te félicite pour ton travail. Je trouve le source relativement sobre... va falloir que je m'intéresse à ce langage... Et je t'avais prévenu que j'allais abuser... ;) Christian [Edité le 18/12/2010 par rebcao] Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant