generalmente il file di installazione viene creato non programandolo direttamente ma utilizzando un apposito tool per la creazione di file di installazione.
Ad esempio c'è InstallShield, che è commerciale, o Inno Setup che è free. Cosa fanno questi tool? In sostanza tu gli dai tutta una serie di mpostazioni, tipo i file da installare, le chiavi di registro da inserire, i messaggi che deve far apparire durante l'installazione, se mettere l'icona sul desktop, ecc, e lui automaticamente ti crea il file di installazione comprimendo tutto il necessario in un file setup.exe. In genere questi tool supportano anche un linguaggio di scripting con cui eseguire controlli più complessi.