EXECUTER LA SOURCE INDÉPENDAMENT DE L'EXE => PRGRAMME PROGRAMMABLE

cs_SHIVA Messages postés 97 Date d'inscription vendredi 28 décembre 2001 Statut Membre Dernière intervention 1 décembre 2003 - 29 sept. 2002 à 22:52
cs_xlt Messages postés 15 Date d'inscription vendredi 11 juillet 2003 Statut Membre Dernière intervention 18 octobre 2004 - 16 sept. 2003 à 11:47
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/4658-executer-la-source-independament-de-l-exe-gt-prgramme-programmable

cs_xlt Messages postés 15 Date d'inscription vendredi 11 juillet 2003 Statut Membre Dernière intervention 18 octobre 2004
16 sept. 2003 à 11:47
En fait tu peux rajouter des dll qui contiennent des forms, des class, des modules à vbscript. Tu peux meme utiliser tes propres ocx.
C'est ce que je fais actuellement et ca marche très très bien (meme avec une connexion ODBC puisque c'est du vbscript).
Pour rajouter une dll à ton code de script il faut ajouter ces lignes:
Dim MaVariable
SET MaVariable=CreateObject("NomDeProjet.NomDeLaForm")
Si j'ai rien oublié ca devrait marcher... (j'oublie tjr qq chose)

Sinon pr rattacher une DLL à son code VBscript (imaginez une DLL avec tt les outils qu'on utilise regulierement!!) il faut ajouter dans son code VB:
Dim MonScriptCtrl as New MSScriptControl.ScriptControl
MonScriptCtrl.AddObject "MonOutilGenialVBScript",MonOutilGenialVB,true
Ne pas oublier de retirer "Option Explicit" du code VBscript si vous utilisez cette méthode (on a rien sans rien)
Personnellement je teste l'existence de mes variables grace à "option explicit" puis avant de faire mon ".addObject" je le retirre et il n'y a pas de plantages.

Bon allé je crois que j'ai rien oublié. Juste que le vbscript c'est certe limité mais il faut pousser les limites!!!
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
3 oct. 2002 à 17:12
c clair ca vaut bien 10/10
mais est ce possible de créer dynamiquement un objet dans ma form ?
cs_mehdibou Messages postés 365 Date d'inscription vendredi 24 mai 2002 Statut Membre Dernière intervention 18 octobre 2004
1 oct. 2002 à 13:20
Ouais, en fait tu utiliseur l'interpréteur VBScript. C'est une bonne idée !
En fait, ce qui serait pas mal, ce serait de créer son interpréteur !
Ce qui reviendrait finalement à créer un langage....

>Patrice99 : si tu retrouve, ça serait sympa de nous prévenir. On pourrais créer un interpréteur VB pour ceux qui ne l'ont pas !
kllmm Messages postés 35 Date d'inscription jeudi 7 février 2002 Statut Membre Dernière intervention 5 octobre 2003
1 oct. 2002 à 11:42
c'est pratique , ca va m'eviter a present d'utiliser "Private Declare Function GetPrivateProfileString Lib "kernel32" " etc etc .......
Super pratique mais en tt cas , selon ton expression "executer la source independemment de l'exe " on pouvais le faire a l'origine a partir de fichiers INI....

En tt cas simple et efficace. bravo CtHuLhU50 (10/10) :-))
Kllm
cs_Koiu Messages postés 269 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 19 février 2015
30 sept. 2002 à 19:45
Excellent!!!
cs_Patrice99 Messages postés 1221 Date d'inscription jeudi 23 août 2001 Statut Membre Dernière intervention 9 septembre 2018
30 sept. 2002 à 14:55
Je suis pas sur mais je crois qu'en VB.Net on peut faire la meme chose avec du vrai VB et pas seulement du VBScript. A quoi ca sert ? ca peut servir en IA, ca peut servir aussi à faire un interpreteur de calcul : on tape l'equation d'une fonction et le programme la trace : c'est le seul moyen d'arriver à faire cela.
Psyllos Messages postés 27 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 11 avril 2007
30 sept. 2002 à 09:12
Xcusez pour les fautes mais chuis un po dans l'pâté là...
Psyllos Messages postés 27 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 11 avril 2007
30 sept. 2002 à 09:11
Que je t'explique qqch Nox :
Tes calculs sont erronés. En fait, le prog ne se modifie pas lui même... En fait ce projet fais références à un objet de VBScript... qui a un interpréteur...
Donc en fait l'exe n'est pas modifié : il envoit simplement des commandes... je sais po si j'ai été très clair. (En gros ce n'est po magique)
cs_Nox Messages postés 415 Date d'inscription mardi 3 avril 2001 Statut Membre Dernière intervention 26 avril 2008
30 sept. 2002 à 01:52
Re-Cool!
Quand on compile en EXE, sa mache... donc l'exe se modifie lui même (ce que je croyais impossible vu qu'il est ouvert)
Donc, dapres mes calculs, un fichier peut être modifié une fois ouvert si il est modifié par lui même ???

tk sa reste du ben bo travail!
cs_Nox Messages postés 415 Date d'inscription mardi 3 avril 2001 Statut Membre Dernière intervention 26 avril 2008
30 sept. 2002 à 01:48
cool!!!
jai pas trouvé coment l'utiliser... mais c cool!!
10/10
cs_Clem Messages postés 282 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 12 février 2007
29 sept. 2002 à 23:35
Oups, je vient de trouver un petit bug, qui arrive quand on fait par exemple une boucle avec for ou autres, voici donc ma version corrigée :


Public Scripting As MSScriptControl.ScriptControl

Private Sub Form_Load()
Set Scripting = New MSScriptControl.ScriptControl
Scripting.Language = "VBScript"
Scripting.Reset
Scripting.AddObject "form1", Form1, True
f = FreeFile
Open "vb.txt" For Input As #f
Scripting.AddCode Input(LOF(f), f)
Close #f
End Sub

Par contre, j'ai remarqué que c'est du vbscript, et non du vrai vb, c'est a dire, qu'il y a quelques diférences (exemple, dans une boucle "for i=0 to 4", en vb normal, on peut mettre "next" ou "next i", en vbs, on peut mettre que "next", mais bon, c'est pas la fin du monde !!!!
Par contre, faudrait trouver le moyen de ne pas passer par Scripting.AddObject "form1", Form1, True pour chaque form et autres du prog.

(Note : 10/10)
cs_Clem Messages postés 282 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 12 février 2007
29 sept. 2002 à 23:26
Ok, je vient de voir la source, et j'ai compris, c cool !!!
Tu peut utiliser toutes les commandes de vb et tout !
J'ai pas encore d'idée d'utilité en tête, mais ca peut être pratique.
Ps: Je vient de trouver, par exemple, faire un système de traduction d'un programme, ou faire des plugins sur prog, bref génial !!!!!!!!!!!!
cs_SHIVA Messages postés 97 Date d'inscription vendredi 28 décembre 2001 Statut Membre Dernière intervention 1 décembre 2003
29 sept. 2002 à 22:52
COOOOOOOOOOOOL !!!
Rejoignez-nous