Enregistrez-programme Windows avec le protocole mailto programme

voix
33

Comment puis-je faire si les mailto:liens seront inscrits avec mon programme?

Comment pourrais-je alors gérer cet événement dans mon programme?

La plupart des solutions que j'ai trouvé à partir d'une recherche rapide sur Google sont comment faire manuellement, mais je dois le faire automatiquement pour les utilisateurs de mon programme s'ils cliquent sur un bouton, tel que « défini comme client de messagerie par défaut ».

Modifier : Suppression de la référence à Delphi, parce que la réponse est indépendante de votre langue.

Créé 01/08/2008 à 23:08
source utilisateur
Dans d'autres langues...                            


3 réponses

voix
18

@ Darlie-O: Votre réponse me mettre dans la bonne direction (je aurais dû attendre que ce soit juste un changement de registre) et je suis arrivé ce travail. Mais je vais marquer cela comme la réponse parce que je vais mettre un peu plus d'informations que je trouve tout en travaillant sur ce point.

La solution à cette question n'a pas d'importance ce langage de programmation que vous utilisez, tant qu'il ya un moyen de modifier les paramètres de registre Windows.

Enfin, voici la réponse:

  • Pour associer un programme avec le protocole mailto pour tous les utilisateurs sur un ordinateur, changer le HKEY_CLASSES_ROOT \ mailto \ shell \ open \ command Valeur par défaut à:
    « exécutable de votre programme » « % 1 »
  • Pour associer un programme avec le protocole mailto pour l' utilisateur actuel , changer les classes HKEY_CURRENT_USER \ Software \ \ mailto \ shell \ open \ command Valeur par défaut à:
    « exécutable de votre programme » « % 1 »

% 1 sera remplacé par l'URL complète mailto. Par exemple, étant donné le lien:

<a href="mailto:user@example.com">Email me</a>

Ce qui suit sera exécuté:
« exécutable de votre programme » « mailto: user@example.com »

Mise à jour (via un commentaire par shellscape): A
partir de Windows 8, cette méthode ne fonctionne plus comme prévu. Win8 applique la clé suivante: HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ Shell \ Associati ons \ URLAssociations \ mailto \ UserChoice pour lequel le ProgID de l'application choisie est hachée et ne peut pas être falsifiée. Il est un PITA royal

Créé 05/08/2008 à 02:49
source utilisateur

voix
12

D'après ce que j'ai vu, il y a quelques clés de Registre qui définissent le client de messagerie par défaut. L'un d'entre eux étant:

Clé du système: [HKEY_CLASSES_ROOT\mailto\shell\open\command]

Nom de la valeur: (Default)

Type de données: REG_SZ(Valeur de chaîne)

Données de la valeur: Mail program command-line.

Je ne suis pas familier avec Delphi 7, mais je suis sûr qu'il ya des bibliothèques d'édition de registre là - dedans que vous pouvez utiliser pour modifier cette valeur.

Certains endroits liste plus de cette clé , d' autres juste cette touche, vous devrez peut - être tester un peu pour trouver celle qui convient (s).

Créé 01/08/2008 à 23:12
source utilisateur

voix
4

Voici la solution officielle de Microsoft pour modifier le programme client de messagerie par défaut. Il est Visual Basic, mais j'espère que le concept est clair de ceci:

http://support.microsoft.com/kb/299853

Créé 01/08/2008 à 23:18
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more