Détecter si l'application est exécutée via autorun.inf ou double clic dans l'explorateur?

StackOverflow https://stackoverflow.com/questions/4184036

  •  10-10-2019
  •  | 
  •  

Question

i ont une application win32 api résidant sur un cd virtuel usb. Est-il possible de déterminer s'il a été exécuté par des fenêtres d'exécution autorun.inf ou par l'utilisateur double-cliquant sur l'icône du CD dans l'explorateur?

Merci ...

Était-ce utile?

La solution

il n'y a aucun moyen direct de détecter qu'une demande a été exécutée à partir d'un autorun.inf. les choses autorun lance l'application comme si elle a été lancée par l'utilisateur.

cependant, vous pouvez spécifier un argument de ligne de commande dans votre autorun.inf, ce qui déclenchera un comportement spécifique dans votre application. cet argument de ligne de commande est récupéré normalement par argv ou GetCommandLine().

Autres conseils

Je ne sais pas comment un double-clic travaux icône de CD, mais que diriez-vous détecter une ligne de commande utilisée dans le autorun.inf?

[autorun] 
open=yourapp.exe /viainf

AFAIK, double-cliquez sur l'icône du CD dans l'Explorateur Windows lance simplement la chaîne de processus de démarrage automatique.

Comme il est censé fonctionner de cette façon et les gens attendent de se comporter comme cela, je laisse cette voie que pour un très bonne raison.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top