Pas d'inquiétude, avec PBAdonf, c'est dans la poche ! ^^

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 05-10-2006 16:38:23

cedced  
Membre
Lieu: Puteaux
Date d'inscription: 19-09-2006
Messages: 9
Pépites: 38
Banque: 0

Faire un appel système

Bonjour,

Est-il possible de faire un appel système à partir de code PBScript ?
Mon besoin : lancer et arrêter une application externe tournant sous Windows (Acrobat ou Word) à partir de mon client PB.

Merci d 'avance.

Hors ligne

 

#2 06-10-2006 09:18:57

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: Faire un appel système

il me semble qu'il faut passer par un ole...

sinon, il y a la commande RUN.

j'attends la reponse des autres forumeurs,
et sinon, je ferai des recherches d'ici la...

Mais le but finale, c'est quoi ?
lancer une appli word, avec un fichier attribué ?


A+ et bon courage


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#3 06-10-2006 09:48:14

Steve  
Membre Geek
Lieu: Aux environs de Strasbourg
Date d'inscription: 29-05-2006
Messages: 40
Pépites: 213
Banque: 0
Site web

Re: Faire un appel système

cedced a écrit:

Bonjour,

Est-il possible de faire un appel système à partir de code PBScript ?
Mon besoin : lancer et arrêter une application externe tournant sous Windows (Acrobat ou Word) à partir de mon client PB.

Merci d 'avance.

Tout est dans le "arrêter".

Tu as la fonction Run, qui permet de lancer un exécutable. Malheureusement, c'est un lancement asynchrone : PB lance l'application externe, te rend la main de suite et tu n'as plus de contrôle dans PB de ce que tu as lancé.

Je vois deux autres solutions
- Pilotage de l'application externe au travers de son API OLE
- ça : http://www.pbdr.com/software/comp/modules.htm , module "Create Process". C'est un objet PB qui utilise l'API Win32 pour lancer un process externe et le gérer.

Hors ligne

 

#4 06-10-2006 14:59:56

cedced  
Membre
Lieu: Puteaux
Date d'inscription: 19-09-2006
Messages: 9
Pépites: 38
Banque: 0

Re: Faire un appel système

Effectivement, je veux pouvoir lancer ET arrêter n'importe quelle appli externe sous Windows depuis mon appli PB

J'ai trouvé un truc assez court ici qui consiste à déclarer des fonctions externes faisant partie de la dll "user32.dll" et à les utiliser pour arrêter mon appli externe.

En combinant la commande RUN qui lance l'appli externe avec des envois de message WM_QUIT pour l'arrêter, je peux faire ce que je désire.

Hors ligne

 

#5 09-10-2006 07:27:43

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: Faire un appel système

donnes nous des nouvelles de ta methode...
Sinon, comment fais-tu pour fermer l'application word, dans le cas ou il y a plusieurs sessions word ouvertes ?
juste une petite question....


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#6 09-10-2006 14:40:22

cedced  
Membre
Lieu: Puteaux
Date d'inscription: 19-09-2006
Messages: 9
Pépites: 38
Banque: 0

Re: Faire un appel système

Un pré-requis est de tester si l'application externe concernée tourne déjà avant d'exécuter la commande RUN.

Pour le reste, je vous tiens au courant.

Dernière modification par cedced (09-10-2006 14:41:01)

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22