× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum Autres langages
 demande d'aide pour un petit scriptSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Mimile
  Posté le 07/06/2012 @ 10:49 
Aller en bas de la page 
Astucien

Bonjour,

Sur chacun de mes PC professionnels j'utilise un langage peu connu : Databus DB/C que j'ai appris sur le tas depuis 1978 !

Au démarrage, le programme de base (dbc.exe appelé par le biais d'un raccourci sur le bureau de chaque PC) exécute un petit programme (answer.dbc) qui a pour mission première de connecter mes deux imprimantes sur les ports lpt1 et lpt2 (qui seront utilisés par la suite au choix par les programmes pour les impressions).

Le principe est que le programme answer.dbc exécute un rollout pour passer au niveau DOS (ou équivalent) et exécute alors les opérations de connexions par le biais de la commande net use.

Ca donne ceci

rollout "net use lpt1: /del"
rollout "net use lpt2: /del"
rollout "net use lpt1: \\wxp2\HP1020"
rollout "net use lpt2: \\pc001\HP2050":

(wxp2 et pc001 sont les noms des PC sur lesquels les imprimantes sont connectées).

Après exécution de ces rollout, retour dans answer.dbc qui "chain" le menu principal (master.dbc) de l'ensemble de ma programmation.

Au départ, ces programmes étaient conçus pour tourner sous WinXP mais suite au cambriolage de mon matériel informatique, j'ai dû faire monter des PC équipés de Win7 Premium (les licenses XP n'étant plus commercialisées) qui fort heureusement exécutent mes programmes sans problème.

Pour une raison inconnue, un des PC poste problème en ce sens que si on arrête le master programme, on n'arrive plus à le relancer en cliquant sur l'icône de son raccourci.

Quand on exécute net use, on constate que lpt1 et lpt2 sont toujours présents mais avec le statut "déconnecté".

La solution que j'ai trouvée est d'ouvrir un terminal et de supprimer manuellement lpt1 et lpt2 (/del) après quoi, quand on clique sur le raccurci de démarrage du master programme, il re-fonctionne normalement.

La secrétaire qui utilise ce PC est régulièrement confrontée à ce problème et si je ne suis pas sur place, je dois lui dicter les opérations à effectuer par téléphone).

Serait-il envisageable de créer un script à démarrer par le biais d'un raccourci qui exécuterait automatiquement les deux opérations /del (et, si ce n'est pas trop demander, qui lancerait également le programme de base dbc.exe qui se trouve dans un dossier sur mon serveur qui connecté d'office en réseau avec la lettre Z:)?

Merci d'avance.

Amicalement

Publicité
ive
 Posté le 18/07/2012 à 20:23 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Groupe Sécurité

Bonjour Mimile

pour le script (par google, je n'ai pas de port Lpt)

net use lpt1: /del
net use lpt2: /del
net use lpt1: \\wxp2\HP1020 /persistent:yes
net use lpt2: \\pc001\HP2050 /persistent:yes

enregistre sous nom.bat, un raccourci à envoyer éventuellement par clic droit > exécuter sous le compte admin

pour lancer dbc sur le serveur, j'ai essayé Psexec de Sysinternal

téléchargement

j'ai réussi une fois !

ensuite "accès refusé"

voir ici j'ai un réseau local qui fonctionne pour le partage de fichiers, xp home et pro, vista et 7, je n'ose pas changer mes paramètres pour tester Psexec

à toi de tester si tes windows 7 sont plus indulgents

bonne chance

Mimile
 Posté le 26/07/2012 à 11:31 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour

Tout d'abord, excuse-moi de te répondre avec un tel retard.

Cela dit, ta solution est la bonne :

1°) suppression des connexions déconnectées (malgré le persistent:yes, ce qui s'explique sans par le fait que je passe par un serveur qui se met en veille au bout d'une heure d'inactivité - autrement dit après 18 heures, quand mon bureau ferme)

2°) créations de nouvelles connexions

3°) démarrage du master-programme qui permet de chainer les programmes de son choix par le biais d'un menu de type "explorateur XP".

Il reste un petit point - très secondaire mais qui m'agace : la succession des différentes opérations sont décrites dans une fenêtre de type DOS qui reste ouverte. Il ne me déplairait pas qu'elle se fermat automatiquement une fois ces opérations exécutées.

Aurait-tu une idée de ce qu'il faudrait ajouter au *.bat pour cela ?

Amicalement,

EDIT : j'ai trouvé la solution : à la fin du *.bat, il suffit d'ajouter : taskkill /im cmd.exe

Dès que le programme est lancé, la fenêtre DOS se ferme (et toutes les autres aussi mais ça n'a pas d'importance).



Modifié par Mimile le 26/07/2012 11:57
breizhbugs
 Posté le 26/07/2012 à 14:03 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien
Mimile a écrit :Aurait-tu une idée de ce qu'il faudrait ajouter au *.bat pour cela ?

Amicalement,

EDIT : j'ai trouvé la solution : à la fin du *.bat, il suffit d'ajouter : taskkill /im cmd.exe

Dès que le programme est lancé, la fenêtre DOS se ferme (et toutes les autres aussi mais ça n'a pas d'importance).

Vois si la commande "exit" permet de fermer proprement la fenetre.

Mimile
 Posté le 26/07/2012 à 16:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Salut

Merci d'intervenir.

J'avais effectivement lu sur un site que exit pouvait être une solution, mais apparemment ça ne donne le résultat escompté que dans certains contextes et, en lisant les commentaires qui suivaient, certains intervenants signalaient que ça ne donnait rien chez eux et certains indiquaient le contraire.

J'ai donc tout d'abord essayé en indiquant "exit" mais il ne s'est rien produit (ce qui précède s'est exécuté correctement mais la fenêtre est restee ouverte).

J'ai continué mes recherches et j'ai trouvé un autre site mentionnant taskkill qui a répondu à mon attente.

Taskkill ferme la fenêtre DOS (cmd.exe) ouverte par le script *.bat dès que le master programme est complètement démarré.

Seul petit inconvénient : il ferme toutes les fenêtres DOS qui seraient ouvertes à ce moment, mais pour moi ça n'a pas d'importance car tous mes programmes sont écrits en mode graphique, style Win XP, qui ne font pas appel des fenêtres DOS.

Je suis le seul à ouvrir des fenêtres DOS pour pouvoir accéder et éditer mes codes-sources.

A ce sujet, l'éditeur de Seven sous DOS est un peu "chnt vu qu'au départ il est en querty.

Il est facile de le convertir en azerty mais on n'a pas accès aux caractères spéciaux comme \ [ { etc.. et il faut faire appel à une table de conversion ascii qui permet en associant alt et un nombre donné d'afficher le caractère voulu (par exemple alt + 35 donne #).

Tu me diras que je n'ai qu'à utiliser notepad++ mais je ne m'y fais pas et certains caractères (notamment ceux accentués) sont convertis en petit symbole en forme de coeur.

Amicalement,

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
99,99 €Ecrans 24 pouces Philips 242V8A (Full HD, IPS, 75 Hz) à 99,99 €
Valable jusqu'au 26 Septembre

RueDuCommerce fait une promtion sur l'écran 24 pouces Philips 242V8A qui passe à 99,99 € alors qu'on le trouve les écrans habituellement autour de 129 €. Cet écran possède une dalle IPS Full HD (1920x1080), offre un temps de réponse de 4 ms, une vitesse de rafraîchissement de 75 Hz (compatible FreeSync) et dispose d'une entrée HDMI et de haut-parleurs intégrés.


> Voir l'offre
32,63 €Mallette à outils Popoman (97 pièces) à 32,63 € avec le code U4T9FU5X
Valable jusqu'au 26 Septembre

Amazon fait une promotion sur la mallette à outils Popoman (97 pièces) qui passe à 32,63 € au lieu 47 €.  Cette malette contient tous les outils nécessaires pour les réparations à la maison. Pour profiter de l'offre, passez la souris sur le bandeau Message promotionnel sur la page du produit et cliquez sur Appliquer à côté des 32% de remise. Vous pouvez aussi utiliser le code promo U4T9FU5X sur la page de paiement.


> Voir l'offre
199 €Ecran portable 15,6 pouces Asus MB16ACE (FullHD, IPS, USB-C) à 199 €
Valable jusqu'au 26 Septembre

Amazon fait une promotion sur l'écran portable 15,6 pouces Asus MB16ACE qui passe à 199 € au lieu de 249 €. Cet écran à emporter partout avec vous possède une dalle IPS antireflet FullHD avec un design ultrafin. L'alimentation et l'affichage se font par USB-C. Branchez simplement votre ordinateur portable ou votre smartphone pour profiter d'un second écran ou même votre console, un ordinateur fixe ou un raspberry Pi 4 pour profiter d'écran principal. Fourni avec un étui refermable pouvant être ajusté de manière à former un support et utiliser le moniteur en mode Portrait ou Paysage.


> Voir l'offre

Sujets relatifs
Demande d'aide pour création d'un logiciel
Aide pour un programme simple en C++
Aide POur initiation a SQL ( oracle 10G)
Script pour lancer un programme en VBS
DEMANDE AIDE
Script bat pour éteindre des pc
Aide pour macro sur Notepad ++
Aide pour jeux
Aide pour puissance 4 en C
aide pour fichier .bat
Plus de sujets relatifs à demande d''aide pour un petit script
 > Tous les forums > Forum Autres langages