2011-10-18 4 views
0

J'ai écrit un service Windows en C. Je voudrais l'installer/désinstaller sans utiliser .NET framework (installutil) ou un programme d'installation de Visual Studio (parce que j'écris ceci en C). J'utilise NSIS pour installer mon application qui contient ce service parmi beaucoup d'autres choses. Est-ce que NSIS peut installer/désinstaller des services Windows, sinon comment puis-je installer/désinstaller un service Windows par programmation. J'ai vu des exemples de C# et VB mais pas de C.Installer/Désinstaller C Service Windows

+0

Que voulez-vous dire par installer en C ? Voulez-vous écrire le code de l'installateur vous-même? Sinon, je recommanderais d'apprendre à propos de wix. Déterminer si NSIS prend en charge l'installation du service est une question de lecture de leurs documents. – RedX

Répondre

1

Le NSIS documentation lists the various possibilities. Vous devez simplement choisir celui qui vous convient le mieux.

Il est beaucoup plus facile pour NSIS de faire cela que de le scripter vous-même en appelant l'API du gestionnaire de contrôle de service.

1

Oui, vous pouvez créer un service en utilisant NSIS . Jetez un oeil à ces examples

1

Il n'y a pas de méthode intégrée dans NSIS pour installer un service Windows mais vous pouvez simplement nous sc.exe avec le paramètre "create" pour l'installer.

Les détails sur la commande sc.exe se trouvent ici: http://support.microsoft.com/kb/251192

et vous suffit de l'appeler NSIS avec une commande comme

Exec '"sc.exe" create ServiceName otherparameters' 
+0

J'utilise sc pour le développement, mais d'après ce que j'ai compris, il nécessite Windows sdk, ce qui n'est pas faisable pour l'installation sur d'autres ordinateurs. Le lien que vous mentionnez mentionne «Kit de ressources» mais n'explique pas ce que c'est. Savez vous ce que c'est? – Michael