[VB6] LANCEUR DE VOS PROGRAMMES SANS INSTALLATION

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 9 août 2010 à 10:53
Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 - 19 août 2010 à 20:26
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/52155-vb6-lanceur-de-vos-programmes-sans-installation

Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 1
19 août 2010 à 20:26
A l'avenir, pour ceux qui cherche une source pour rendre "portable" nos programmes, alors consultez la source isolator de renfield ci-dessus. Car elle procure une très bonne solution de portabilité.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 août 2010 à 20:35
peti bemol au dernier commentaire :

http://www.vbfrance.com/codes/ISOLATOR-GENEREZ-FICHIERS-MANIFEST-VOS-EXE-DLL-OCX_48269.aspx

Permet de lancer des softs sans registrer les dll et ActiveX (donc pas besoin de droits speciaux)
Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 1
16 août 2010 à 17:26
>neria : Oui et Non. Un petit programme vb6 tout simple aura juste besoin de msvbvm60.dll, donc pas besoin de setup ni les autres dll. En revanche, un programme plus complexe, avec plusieurs dépendances, des ocx et activex ; aura besoin de les enregistrer dans le registre pour fonctionner. Même si on met toutes les librairies à sa racine, dans le dernier cas, le programme ne voudra pas fonctionner correctement sans les enregistrer.

Créer un setup est un choix propre mais un peu prise de tête lors de la création et des mise à jours. En revanche, un programme dit "portable", est une façon agréable de l'exécuter n'importe où. Ma source est un comme un lanceur pour rendre un programme portable, mais en laissant une trace dans le system. Raison pour laquelle, ce n'est pas un lanceur dit "portable".

>hocioran : je ne pense pas qu'une macro vba puisse désactiver le niveau de sécurité d'exécution des macros. Sinon, ce system de sécurité ne servirait à rien.
hocioran Messages postés 11 Date d'inscription lundi 4 décembre 2006 Statut Membre Dernière intervention 7 juillet 2017
16 août 2010 à 12:23
Salut,
je travail avec MS-Excel et MS-Access, je souhaiterai qu'au lancement de mes applications sur une autre machine, le système de sécurité de MS-Excel/Access n'interrompe pas l'exécution de mon application.
je souhaite que mon application s'exécute sur n'importe quelle PC ou se trouve excel ou access.
MERCI.
cs_neria Messages postés 319 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 16 février 2009
16 août 2010 à 08:35
Quitte à emporter tout l'attirail VB6, autant mettre les DLL dans le même répertoire que le programme et il n'y a pas besoin de tout ce bordel.
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
10 août 2010 à 21:49
@Renfield : Grr, encore une fonction malfoutue dans VB6 ...
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 août 2010 à 14:54
on error ?
non, pas simple parce que Dir mets du temps avant de repondre et crasher....
c'est contre performant ^^
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
10 août 2010 à 14:31
@Renfield : OK. Mais on peut quand même faire un "On Error Resume Next" avant pour régler le problème. Une autre façon de faire serait d'utiliser l'API GetFileAttributes (si elle renvoit INVALID_FILE_ATTRIBUTES le fichier n'existe pas).
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 août 2010 à 14:07
Dir gère mal les chemins reseaux inexistants => levée d'erreur.
cs_asimengo Messages postés 280 Date d'inscription jeudi 24 mars 2005 Statut Membre Dernière intervention 18 mars 2009
10 août 2010 à 11:17
Well.

Il y'a néanmoins un problème de sécurité. N'importe qui modifierai la clé "Exe file name" pour faire du bordel.

Je te propose de rajouter dans ta section [Settings], une clé genre "Checksum Value" que ton lanceur vérifierai pour certifier l'exe à exécuter.
Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 1
10 août 2010 à 10:36
>ghuysman: il y a longtemps, j'avais lue qu'il était mieux d'utiliser l'api findfirstfile au lieu de dir() mais je ne sais plus pourquoi...
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
9 août 2010 à 16:42
Désolé de ne pas avoir apporté de précisions, mais je voulais dire "C'est pas plus malin d'utiliser Dir$ au lieu de FindFirstFile & co. ?"
Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 1
9 août 2010 à 13:48
>ghusmans: Oui pourquoi pas, mais sa simple existence ne suffirait pas. Parce qu'il faudrait inclure une différence pour chaque pc sur le lequel le programme aurait été lancé.
Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 1
9 août 2010 à 11:32
J'ai fait la mise à jour en supprimant le terme portable au profit de sans installation afin d'éviter les confusions. Mon objectif était de faire un lanceur d'appli comme les lanceurs portables. Mais comme le mien laisse une trace dans le system alors ok, on n'a pas le droit de dire qu'il rend nos programmes portables.

Cependant, pour ceux que ça intéresse, ce lanceur permet de faire pareil qu'un lanceur rendant nos programmes portables, mais en laissant une trace.
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
9 août 2010 à 11:08
... ne fonctionnera jamais pour quelqu'un qui n'est pas admin de sa machine, mais moi non plus je ne trouve pas de titre pour qualifier ce programme.

Et ne serait-ce pas une meilleure idée de tester l'existence d'un fichier via la fonction Dir$ ?
Philippe734 Messages postés 308 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 15 juin 2015 1
9 août 2010 à 11:01
Je suis d'accord pour la définition. J'ai fait exprès de provoquer. Quel terme me propose tu pour renommer le projet ? Parce que je me suis demandé mais j'ai préféré laissé ce mot qui provoquerait des réactions ;-) En fait, mon but est que les membres recherchant une méthode pseudo portable pour leurs programmes arrivent quand même là.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
9 août 2010 à 10:53
Nous n'avons pas la meme definition du mot portable, l'ami.

par portable, j'entends que rien n'est a enregistrer ou que ce soit...
que l'application ne laisse aucune trace en base de registres ou dans le dossier systeme...
Rejoignez-nous