FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Exécution de scripts VBS Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
Exécution de scripts VBS Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Exécution de scripts VBS Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Exécution de scripts VBS Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Exécution de scripts VBS Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Exécution de scripts VBS Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Exécution de scripts VBS Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Exécution de scripts VBS Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Exécution de scripts VBS Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Exécution de scripts VBS Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Exécution de scripts VBS Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Exécution de scripts VBS Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Exécution de scripts VBS Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Exécution de scripts VBS Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Exécution de scripts VBS Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le deal à ne pas rater :
Smartphone Xiaomi 14 – 512 Go- 6,36″ 5G Double SIM à 599€
599 €
Voir le deal

 

 Exécution de scripts VBS

Aller en bas 
5 participants
AuteurMessage
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Exécution de scripts VBS Empty
MessageSujet: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 1:35

Dans ma distribution DLLdivers, j'ai ajouté une nouvvelle DLL: Wscript.dll. Elle contient une seule fonction:
Code:
resultat% = dll_call1("ExecuteVBS",hnd%)
ExecuteVBS est le nom de la fonction
hnd% est le handle d'un memo contenant le code du script VBS à exécuter: hnd% = handle(numero_memo%)
resultat% contient le code retour, avec
-1 = erreur
autre valeur: longueur en caractères du script exécuté

La documentation du fichier Autres_DLL.rtf a été mise à jour.

Un programme test_wscript.bas est inclu également.

Note: on peut parfaitement faire HIDE du memo à utiliser pour ne pas gêner l'affichage, dans un programme.

Juste pour info: cela ne marche pas avec un LIST, il faut bien utiliser un MEMO. Et la fonction handle() ne marche pas avec un DLIST...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Exécution de scripts VBS Empty
MessageSujet: re   Exécution de scripts VBS EmptySam 19 Nov 2011 - 3:04

Je fonce télécharger et tester ca ! bounce bounce bounce bounce bounce
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 9:42

Problème avec cette implémentation: on ne peut pas passer des paramètres au script.

Ou plutôt si: regardez ceci (à copier-coller dans le mémo du programme test_wscript pour le tester:
Code:
Essai("Bonjour")
Essai(17)

sub Essai(par)
msgbox "Sous-programme Essai" & vbcrlf & "Le paramètre est " & par
end sub


On voit bien que le sous-programme Essai est appelé deux fois, avec des paramètres différents...

Et en demandant "wscript subroutine" à Mr. Google (ou en suivant ce lien), on en apprend beaucoup plus sur le passage de paramètres et des scripts externes...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 11:45

Genial, une DLL qui va servir souvent je pense et permettra d'utiliser les scripts vbs pour les fonctions spécifiques
Revenir en haut Aller en bas
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 11:52

Hallo Klaus,

ich habe Probleme mit deiner WEB-Seite.

Die Darstellung ist seh klein. Zum Teil
sind alle Texte nicht dargestellt.

Funktioniert die Kontakerstellung ?

Gruß Severin
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 12:27

????????????

Ich verwende Firefox mit Adblock Plus und alles ist normal angezeigt.

Kontakt Seite ? Der Verweis geht in das Panoramic Forum, in die Abteilung Über meine Webseite, und da kannst Du wie gewohnt einen Post absetzen.

?????????????

J'utilise Firefox avec Adblock Plus et tout est affiché normalement.

Page de contact ? Le lien mène dans le forum Panoramic, dans la section concernant ma page Web, et là, tu peux poster comme d'habitude.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 12:38

klaus,
kannst du mir zeigen wie ein Hardkopie hier eingestellt wird ?
Severin

Ich habe Windows Internet Exprorer 9
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 12:53

Ikone "Printer" ...

oder Menu "Seite", Option "Abspeichern als..." ...

oder ctrl/A ctrl/C dann Word, dort ctrl/V ...

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 13:36

ich teste noch

Exécution de scripts VBS Web_kl11
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptySam 19 Nov 2011 - 14:13

Hier bei mir mit Firefox / Voici chez moi avec Firefox:
[img]Exécution de scripts VBS Site_k11[/img]

und hier:
[img]Exécution de scripts VBS Site_k12[/img]

Die Deformation kommt von des Übersetzungsmaschine...
Vielleicht kannst Du die englische Seite einfacher lesen...

La déformation vient de l'outil de traduction...
Tu pourrais peut-être lire plus facilement la page anglaise...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
jean_debord

jean_debord


Nombre de messages : 1266
Age : 70
Localisation : Limoges
Date d'inscription : 21/09/2008

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptyMar 22 Nov 2011 - 15:13

Le code source de cette DLL est-il disponible ?

A titre de curiosité, j'aimerais essayer avec le C à la place du VBS, en utilisant le compilateur TCC (http://bellard.org/tcc/) qui peut compiler des scripts à la volée. Certains logiciels l'utilisent d'ailleurs comme langage de script.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1266
Age : 70
Localisation : Limoges
Date d'inscription : 21/09/2008

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptyJeu 24 Nov 2011 - 9:43

Une solution alternative consisterait à utiliser la bibliothèque libtcc fournie avec TCC. Elle permet de compiler en mémoire vive un programme passé sous la forme d'une chaîne de caractères. Malheureusement, le fichier d'en-tête libtcc.h, écrit en C, semble difficile à adapter en Panoramic. Je vais d'abord essayer d'en faire une version pour FreeBASIC (qui possède un utilitaire de traduction des fichiers *.h). Il devrait alors être possible d'en tirer une DLL utilisable par Panoramic.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptyVen 25 Nov 2011 - 12:21

Voici le code source de la DLL. C'est public et entièrement libre de droits, pour tout usage:
Code:
library wscript;


uses
  Windows,
  Sysutils,
  Math,
  Messages,
  Classes;

var
{ Déclarations publiques }
  sNewFileName: string;

{ définir un type de Pointeur sur Integer pour déclaration de procédure }
type
  PInteger = ^Integer;
  PString = ^String;

{ Function GetOtherWindowMemoText(const sCaption : String) : WideString;
var
        hWindow : THandle;
        hChild  : THandle;

        aTemp      : array[0..5000] of Char;
        sClassName : String;
begin
        Result := '';

        hWindow := FindWindow(Nil,PChar(sCaption));

        if hWindow = 0 then begin
            ShowMessage('Could NOT find the other program');
            exit;
        end;

        hChild := GetWindow(hWindow, GW_CHILD);
        while hChild <> 0 do Begin
              if GetClassName(hChild, aTemp, SizeOf(aTemp)) > 0 then begin
                  sClassName := StrPAS(aTemp);

                  if sClassName = 'Edit' then begin
                    SendMessage(hChild,WM_GETTEXT,SizeOf(aTemp),Integer(@aTemp));

                    Result := StrPAS(aTemp);
                  end;
              end;
              hChild := GetWindow(hChild, GW_HWNDNEXT);
        end;
end;            }

// créer un nom de fichier unique pour le fichier temporaire
function CreateNewFileName(BaseFileName: String; Ext: String;
  AlwaysUseNumber: Boolean = True): String;
var
  DocIndex: Integer;
  FileName: String;
  FileNameFound: Boolean;
begin
  DocIndex := 1;
  Filenamefound := False;
  {if number not required and basefilename doesn't exist, use that.}
  if not(AlwaysUseNumber) and (not(fileexists(BaseFilename + ext))) then
  begin
    Filename := BaseFilename + ext;
    FilenameFound := true;
  end;
  while not (FileNameFound) do
  begin
    filename := BaseFilename + inttostr(DocIndex) + Ext;
    if fileexists(filename) then
      inc(DocIndex)
    else
      FileNameFound := true;
  end;
  Result := filename;
end;

// exécuter le contenu d'un memo Panoramic en tant que script VBS
function ExecuteVBS(const hnd: integer): integer; stdcall; export;
var
  aTemp: array[0..5000] of Char;
  str, temp: string;
  StartInfo : TStartupInfo;
  ProcInfo : TProcessInformation;
  CreateOK : Boolean;
  F: TextFile;
begin

  SendMessage(hnd,WM_GETTEXT,SizeOf(aTemp),Integer(@aTemp));
  str := StrPAS(aTemp);
{ fill with known state}
  FillChar(StartInfo,SizeOf(TStartupInfo),#0);
  FillChar(ProcInfo,SizeOf(TProcessInformation),#0);
  StartInfo.cb := SizeOf(TStartupInfo);
  temp := GetEnvironmentVariable('TEMP');
  sNewFileName := CreateNewFileName(temp + '\script_temporaire','.vbs');
  AssignFile(F, sNewFileName);
  Rewrite(F);
  WriteLn(F, str);
  CloseFile(F);
  CreateOK := CreateProcess(nil, PChar('wscript '+sNewFileName), nil, nil,False,
              CREATE_NEW_PROCESS_GROUP+NORMAL_PRIORITY_CLASS,
              nil, nil, StartInfo, ProcInfo);
{ check to see if successful}
  if CreateOK then
    begin
        WaitForSingleObject(ProcInfo.hProcess, INFINITE);
        result := length(str);
    end
  else
    begin
      result := -1;
    end;
  DeleteFile(sNewFileName);
  CloseHandle(ProcInfo.hProcess);
  CloseHandle(ProcInfo.hThread);
end;

exports
        ExecuteVBS
;


begin
end.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
jean_debord

jean_debord


Nombre de messages : 1266
Age : 70
Localisation : Limoges
Date d'inscription : 21/09/2008

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptyDim 27 Nov 2011 - 12:49

Merci Klaus Smile

J'ai fait une petite modification pour lancer des scripts en C :

http://www.unilim.fr/pages_perso/jean.debord/panoramic/tccscript.zip

Attention : le compilateur TCC (http://bellard.org/tcc) doit être installé dans le répertoire \TCC à la racine du disque.

Par ailleurs, D. J. Peters a réussi à "porter" la bibliothèque libtcc sous FreeBASIC, ce qui permet d'envisager des DLL plus évoluées.

A suivre donc ..
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS EmptyDim 27 Nov 2011 - 13:24

Cool Smile bien joué
Revenir en haut Aller en bas
Contenu sponsorisé





Exécution de scripts VBS Empty
MessageSujet: Re: Exécution de scripts VBS   Exécution de scripts VBS Empty

Revenir en haut Aller en bas
 
Exécution de scripts VBS
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Exécution de scripts VBS sous Panoramic
» Panoramic et les scripts vbs.
» Scripts en formules dynamiques
» Nouveauté: des scripts en Panoramic !
» execution d'un exe

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: