Comment puis-je convertir un script VBScript en fichier exécutable (EXE)?
J'avais regardé autour de l'information pour convertir un VBScript (*.vbs)
à un exécutable et se rendit compte que la plupart des outils disponibles sont réellement enveloppant le script dans le fichier exécutable. Essayé quelques outils et ça n'a pas fonctionné aussi bien que prévu. J'ai essayé IExpress (sous Windows XP) pour créer le Win32 auto extraction fichier cab mais il n'a pas invoquer correctement sur Windows 7 machines.
Donc je suis à la recherche d'un moyen de compiler le vbs en exe. Je suis en train de port mon script en VB Express 2008 mais je n'ai aucune connaissance préalable de Visual Basic ici. Il y a beaucoup de fautes mais je suis encore à essayer de la contourner.
Quelqu'un peut s'il vous plaît conseils sur comment dois-je procéder à partir d'ici? Je veux dire, un archive auto-extractible être la voie à suivre au lieu d'un fichier exécutable autonome? Mais dire comme Winzip je ne sais pas comment faire pour faire fonctionner le script après l'extraction.
Des idées?
source d'informationauteur Alex Cheng
Vous devez vous connecter pour publier un commentaire.
Il n'y a aucun moyen de convertir un VBScript (.fichier vbs) dans un fichier exécutable (.fichier exe) parce que VBScript est pas un langage compilé. Le processus de conversion de code source en fichier exécutable natif code est appelé "compilation"et il n'est pas soutenu par script langues comme VBScript.
Certainement, vous pouvez ajouter à votre script d'une archive auto-extractible à l'aide de quelque chose comme WinZip, mais tout ce qui fera est de le compresser. Il est douteux que la taille du fichier diminuera sensiblement, et comme c'est un fichier de texte brut pour commencer, il est vraiment pas nécessaire de le compresser. Le seul but de auto-extractible archive est que du logiciel de décompression (comme WinZip) n'est pas requis sur l'ordinateur de l'utilisateur final d'être en mesure de extrait ou "decompresser" les fichiers. Si elle n'est pas compressé, en premier lieu, c'est un point discutable.
Sinon, comme vous l'avez mentionné, il existe des moyens pour envelopper le code VBScript fichiers dans un fichier exécutable autonome, mais ce sont juste des wrappers qui automatiquement exécuter le script (dans sa forme actuelle, non de l'état) lorsque l'utilisateur double-clique sur le .exe fichier. Je suppose que ça peut avoir ses avantages, mais il ne ressemble pas à ce que vous recherchez.
Pour réellement transformer votre VBScript dans un fichier exécutable, vous allez avoir à le réécrire dans un autre langage qui peut être compilé. Visual Basic 6 (la dernière version de VB, avant l' .NET Framework a été introduit) est très similaire à la syntaxe de VBScript, mais prend en charge la compilation en code natif. Si vous déplacez votre code VBScript pour VB 6, vous pouvez les compiler dans un fichier exécutable natif. L'exécution de l' .exe fichier exiger que l'utilisateur a le VB 6 bibliothèques d'Exécution installé, mais elles sont intégrées dans la plupart des versions de Windows que l'on trouve maintenant dans la nature.
Sinon, vous pouvez aller de l'avant et de faire le saut à Visual Basic .NETqui reste un peu similaire à la syntaxe de vb6 et VBScript (bien que ce ne sera pas n'importe où près d'un couper-coller de la migration). VB.NET les programmes compile aussi à un .fichier exe, mais ils exigent l' .NET Framework runtime installé sur l'ordinateur de l'utilisateur. Heureusement, cela a aussi devenue monnaie courante, et il peut facilement être redistribués si vos utilisateurs n'arrivent pas à l'avoir. Vous avez mentionné d'aller dans cette voie dans votre question (le portage de votre script en VB 2008 Express, qui utilise VB.NET), mais que vous avez été d'obtenir beaucoup d'erreurs. C'est ce que je veux dire, elle était loin d'être un copier-coller de la migration. Il y a quelques énorme différences entre VB 6/VBScript et VB.NET en dépit de certains superficielle syntaxique des similitudes. Si vous voulez de l'aide de migrer sur votre VBScript, vous pouvez poster une question ici, sur un Débordement de Pile. En fin de compte, c'est probablement la meilleure façon de faire ce que vous voulez, mais je ne peux pas vous promettre que ce sera simple.
Vous pouvez utiliser VBSedit logiciel pour convertir votre code VBS .exe fichier. Vous pouvez télécharger la version gratuite de Internet et l'installation vbsedit applilcation sur votre système et de convertir les fichiers au format exe.
Vbsedit est une bonne application pour VBscripter de
Plus d'infos
De trouver un compilateur, vous aurez 1 par .net version installé, tapez dans l'invite de commande.
Windows Forms
Pour un Windows Forms version (pas de fenêtre de console et nous n'avons pas fait de créer toutes les formes - bien que vous pouvez si vous le souhaitez).
Ligne de compilation, dans une invite de commande.
Texte pour VBS2EXE.vb
À l'aide de ces paramètres facultatifs vous donne une icône et manifeste. Un manifeste permet de spécifier fonctionner normalement, exécuter élevée si l'admin, seulement exécuter élevée.
/win32icon: Spécifie un Win32 fichier icône (.ico) pour le défaut de ressources Win32.
/win32manifest Du fichier est incorporé dans le manifeste de la sortie en PE.
En théorie, j'ai l'UAC désactivé ne peut donc pas tester, mais mettre ce fichier texte sur le bureau et l'appeler vbs2exe.manifeste, enregistrer en UTF-8.
De la ligne de commande
Le manifeste
J'espère qu'il sera désormais UNIQUEMENT exécuter en tant qu'administrateur.
Donner Accès À une multitude d'Objets de
Voici un exemple de donner le vbscript accès à un .NETTE de l'objet.
Pour Incorporer des informations de version
Télécharger vbs2exe.fichier res de https://skydrive.live.com/redir?resid=E2F0CE17A268A4FA!121 et de le mettre sur le bureau.
Télécharger ResHacker de http://www.angusj.com/resourcehacker
Ouvrir vbs2exe.fichier res dans ResHacker. Edit loin. Cliquez sur bouton de Compilation. Cliquez sur menu Fichier - Enregistrer.
Type
Ici sont un couple de solutions possibles...
Je n'ai pas essayé toutes ces moi encore, mais je vais essayer tous bientôt.
Remarque: je n'ai pas de relations personnelles ou financières à l'un de ces outils.
1) VB Script to EXE Converter (PAS de Compilateur): (Gratuit)
vbs2exe.com.
L'exe produit semble être un vrai EXE.
De leur site web:
Cette solution doit fonctionner même si wscript/cscript n'est pas installé sur l'ordinateur.
Fondamentalement, cela crée une vraie .EXE fichier. À l'intérieur de la création .EXE est un "moteur" qui remplace wscript/cscript, et une copie chiffrée de votre code de Script visual basic. Ce moteur de remplacement exécute votre code DANS la MÉMOIRE sans appel wscript/cscript de le faire.
2) Compiler et de les Convertir VBS en EXE...:
ExeScript
La version actuelle est la 3.5.
Ce n'est PAS une solution Libre. Ils ont 15 jours d'essai. Après cela, vous devez acheter une licence pour une lourde $44.96 (Home License/pas d'utilisation commerciale), ou $89.95 (Licence de l'Entreprise/l'utilisation commerciale).
Il semble fonctionner d'une manière similaire à la solution précédente.
Selon un post sur le forum:
Post: "Un fichier Exe encore besoin de Windows Scripting Host (WSH) ??"
3) Chiffrer le script de Microsoft ".vbs .vbe" outil de cryptage.
Apparemment, cela ne fonctionne pas pour Windows 7/8, et il est possible qu'il existe des moyens de "décrypter" le .vbe fichier. Au moment d'écrire ces lignes, je ne pouvais pas trouver un lien de travail pour le téléchargement. Si j'en trouve un, je vais l'ajouter à cette réponse.
Vous pouvez essayer VbsEdit. Obtenir la dernière version de Adersoft de VbsEdit http://www.vbsedit.com son un petit téléchargement, mais c'est un outil puissant pour créer et modifier des fichiers vbs et les convertir en fichiers exécutables sans déballage vers un dossier temporaire. (sauf si vous avez une ancienne version comme version 4.x.x.x) j'ai été en utilisant ce programme depuis 2008, et il est libre d'évaluer à jamais, mais est livré avec un rappel à s'activer et à chaque fois que vous Démarrez votre script à partir de la vbsedit fenêtre, vous devrez attendre quelques secondes, Ou vous pouvez l'acheter pour $60 pour enlever ces petits ennuis.
Contrairement à ScriptCryptorde la conversion exe n'aurez pas de limites si vous êtes encore en phase d'évaluation, il sera exécuté sans aucune indésirables supplémentaires de windows.
Vous pouvez faire cela avec PureBasic et MsScriptControl
Tout ce que vous devez faire est de coller le MsScriptControl à la Purebasic éditeur et ajoutez quelque chose comme ci-dessous