Exe ohne Abhängigkeiten.

Anfängerfragen zum Programmieren mit PureBasic.
Freshconcept
Beiträge: 2
Registriert: 22.03.2017 13:36

Exe ohne Abhängigkeiten.

Beitrag von Freshconcept »

Hallo
Ich habe mich in den letzten Tagen etwas durch dieses Forum gewühlt, bin aber noch nicht ganz aufgeklärt. Ich wäre froh wenn mir jemand meine Stichpunkte unten ganz kurz bestätigt oder definitiv verneinen würde.
Als Systemadministrator habe ich mir im Laufe der Zeit diverse Scripte für Winlogons, System Cleanups, Systemvorbereitung, Software Deployment etc. aufwändig erarbeitet. Diese kommen bei diversen Firmenkunden zum Einsatz. Die Scripte sind teilweise AutoIt, Powershell, normale Batche oder vbs.
Es steckt sehr sehr viel Arbeit darin und Jahrzehnte Erfahrung. Ich musste leider bitter lernen, daß man so eine Toolsammlung besser irgendwie vor Kopie oder Diebstahl schützt. Schwierig wenn andere Dienstleister auch im System arbeiten (müssen). Deswegen geht meine Idee dahin alles in eines oder mehrere Kommandozeilentools zu compilieren. Hier ist mir unter anderem Purebasic nahegelegt worden. Wichtig ist, daß die Exe diverse Funktionen haben muss und OHNE abhängige dlls, Frameworks etc. laufen muss. Folgendes muss drin stecken:
- Auswertung von Kommandozeilenparametern möglich
- Support von Registry Funktionen
- Support von Zip files MIT Passwort (2.0 Typ) bis ca 200MB Größe
- Einfacher XML file Support
- Shell Aufrufe auf das Betriebssystem

Vielen Dank im voraus für eure Mühe,
Peter
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8675
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Exe ohne Abhängigkeiten.

Beitrag von NicTheQuick »

Das mit dem Zippen klappt so ohne andere DLLs oder Tools glaube ich nicht. Aber dazu werden andere sicher noch etwas mehr sagen können.
Alles andere geht direkt aus Purebasic heraus. Um die Registry zu beschreiben, kannst du einfach die Windows-API ansprechen und damit arbeiten. Der Rest ist nativ in Purebasic integriert.
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Exe ohne Abhängigkeiten.

Beitrag von RSBasic »

Grundsätzlich hast du bei PureBasic diese Probleme nicht, dass du stets darauf achten musst, dass du DLL-Dateien mitliefern oder/und Framework/Laufzeitumgebung installieren musst. Das ist der große Vorteil von PB, dass du sogar eine einzige kleine Executable-Datei ohne Setup an Kunden weitergeben kannst.
Wenn du die PB-Funktionen oder/und WinAPI-Funktionen verwendest, basieren diese zwar auch auf DLL-Dateien, aber diese sind in allen Windows-Versionen vorhanden und du musst sie nicht zusätzlich mitliefern.
Es sei denn, du verwendest eine ganz neue WinAPI-Funktion, die erst in Windows 10 hinzugefügt wurde, dann ist deine Anwendung natürlich nur unter Windows 10 lauffähig, aber das ist eher eine Ausnahme.
Freshconcept hat geschrieben:- Auswertung von Kommandozeilenparametern möglich
- Support von Registry Funktionen
- Einfacher XML file Support
- Shell Aufrufe auf das Betriebssystem
Die von dir genannten Funktionen können mit PB und WinAPI ohne zusätzliche DLL-Dateien umgesetzt und verwendet werden.

Das mit dem ZIP bin ich mir nicht sicher. Da hab ich bisher wenig Erfahrung damit.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

Re: Exe ohne Abhängigkeiten.

Beitrag von _JON_ »

Willst Du ein "Stand-a-Lone" Programm, oder soll es wirklich keine Abhängigkeiten haben.

Sonst einfach 7za.exe mit in die Exe packen und bei Bedarf im Temp ordner speichern.
Das kommt auf jeden Fall mit großen Zip Dateien klar.
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Benutzeravatar
Bisonte
Beiträge: 2427
Registriert: 01.04.2007 20:18

Re: Exe ohne Abhängigkeiten.

Beitrag von Bisonte »

Zip Dateien zu entpacken oder zu packen ist bis 2GB kein Problem. Das ist in Purebasic integriert.
Der einzige Haken sind die passwortgeschützten ZIP-Archive...

Aber da würde ich den obigen Vorschlag ausführen und die 7za.exe integrieren, solange das mit dem Lizenzkram hinhaut.
PureBasic 6.04 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
Freshconcept
Beiträge: 2
Registriert: 22.03.2017 13:36

Re: Exe ohne Abhängigkeiten.

Beitrag von Freshconcept »

_JON_ hat geschrieben:Willst Du ein "Stand-a-Lone" Programm, oder soll es wirklich keine Abhängigkeiten haben.

Sonst einfach 7za.exe mit in die Exe packen und bei Bedarf im Temp ordner speichern.
Das kommt auf jeden Fall mit großen Zip Dateien klar.
Hallo
Das ist eine gute Idee. Wenn die exe so etwas wie einen "wrapper" bietet, damit man module bei Bedarf im lokalen Temp Verzeichnis bereitstellt, dann wäre ich aus dem Schneider. Wichtig ist am Anfang nur daß man eben mit einer einzigen Datei hantieren muss beim Deployment mit psexec z.B.
Ob die exe nun 1MB oder 5MB hat ist nicht so entscheidend.
Vielen Dank,
Peter
H.Brill
Beiträge: 356
Registriert: 15.10.2004 17:42
Wohnort: 66557 Neunkirchen

Re: Exe ohne Abhängigkeiten.

Beitrag von H.Brill »

Geht auch mit Windows Bordmitteln (shell32.dll).
Allerdings nur mit COM Automation. Für COM gibt's
ja was für PB.

Folgender Link ist da sehr interessant :

http://www.access-basics.de/index.php/Z ... tteln.html

Das hatte ich bisher auch nicht gewußt.
PB 5.60
Benutzeravatar
Kiffi
Beiträge: 10621
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Exe ohne Abhängigkeiten.

Beitrag von Kiffi »

bzgl. passwortgeschütztes ZIP:

Thomas hat da was zur Verfügung gestellt: http://www.purebasic.fr/german/viewtopi ... 16&t=30006

Das müsste eigentlich dieses Archiv sein: http://www.rsbasic.de/backupprogramme/temp/minizip.zip

Grüße ... Peter
Hygge
Antworten