2010-03-24 11 views
0

J'ai un programme avec un type de fichier associé. Cependant, lorsque je double-clique sur un fichier pour lancer le programme, je n'arrive pas à comprendre où ce chemin a été passé au programme.Comment puis-je obtenir le chemin d'accès au fichier associé utilisé pour lancer un programme?

Initialement, je pensais que le chemin du fichier serait dans Environment.CommandLine, mais la ligne de commande ne contenait que le chemin du programme.

J'ai spécifié l'association de fichier en utilisant les options de publication dans le studio visuel comme suit: extension: .ext, Description: Certains fichier, ProgId: ProjectName, Icon: SomeIcon.ico.

Répondre

0

Vous avez raison, il devrait en effet être passé comme un argument de ligne de commande et être disponible via Environment.CommandLine.

Je suppose que quelque chose ne va pas avec l'association de fichiers elle-même. Here est un article TechNet daté mais toujours utile sur la façon dont ces choses fonctionnent. En particulier, le "%1" dans la capture d'écran ci-dessous est essentiel.

Screenshot of action editing dialog

Je ne suis pas sûr de la chose DDE, donc si vous ne l'utilisez pas, éteignez-le.

0

En guise d'estimation, votre association de type de fichier peut ne pas être configurée correctement. Si vous regardez dans le registre de votre commande "Open" pour votre type de fichier, la commande est probablement configurée comme "c: \ votre-compagnie \ votre-app.exe", au lieu de "c: \ votre-compagnie \ votre -app.exe ""% 1 ", ce qui est ce qu'il devrait être si vous vouliez que le chemin du fichier apparaisse sur la ligne de commande.

+0

Est-ce que visual studio ne devrait pas configurer correctement cette propriété? –