Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Intestazioni che avviano programmi tipo "skype:nomeuser"

    Salve a tutti,

    spero di non aver sbagliato categoria dove postare la mia domanda, il mio quesito è questo, sul web trovo degli url tipo quello di Skype ovvero anzicchè il classico "http://" trovo "skype:username?call".

    Un utente che ha installato skype nel proprio pc può cliccare e il procedimento di chiamata gli funzionarà, per coloro che non hanno skype verrà mostrato un errore di sintassi non valida.

    Siccome sto sviluppando un software, vorrei dotarlo di questa opzione ovvero come faccio a crearmi la mia stringa es. "mioprogramma:username" ovvero a dire al sistema operativo che quando vene della barra degli indirizzi mioprogramma: deve chiamare il mio programma.

    Come si chiama questa funzione?
    Funziona con tutti i browser o solo con Internet Explorer?

    Confido in voi per le notizie.
    Saluti

  2. #2
    http: e skype: (o anche ftp indicano il protocollo di trasferimento dati.

    Quando, ad esempio, si installa Firefox e lo si mette come browser predefinito, in pratica si dice al sistema operativo che il protocollo http: deve essere aperto con Firefox.
    Stessa cosa per il protocollo Skype: quando installiamo skype, esso dice al sistema operativo che il programma per aprire il protocollo skype: è Skype.

    Ora, io non so assolutamente darti spiegazioni sul come fare a creare un programma che crei un nuovo protocollo e lo associ ad un programma, però magari con le informazioni che ti ho dato hai qualche indizio in piu per fare qualche ricerca!
    se vedi nero,
    spara a vista

  3. #3
    anzi, pensandoci bene, secondo me potrebbe bastare solo aggiungere qualche voce nel registro di sistema durante la fase di installazione..
    ma non ne sono sicuro!!

    se trovi una soluzione magari scrivila qui che sono curioso!
    se vedi nero,
    spara a vista

  4. #4
    Prima di tutto grazie per le info, poi elenco qui cosa ho scoperto fin ora.

    Effettivamente sono andato proprio a fare queste ricerche tramite "regedit". Ho cercato "mailto" e ho scoperto che nel registro trovo

    HKEY_CLASSES_ROOT\mailto\shell\open\command e come valore predefinito trovo il percorso di outlook, ma non basta inquanto poi nella posizione:

    HKEY_CLASSES_ROOT\PROTOCOLS\Handler
    ritrovo il mailto e come valore predefinito non ha niente, ma ha una stringa di nome "CLSID" e valore "{3050f3DA-98B5-11CF-BB82-00AA00BDCE0B}"

    ho quindi provato a creare delle chiavi seguendo questo schema solo che come valore di CLSID dovrei procurarmene uno? O basta che io ne crei uno a piacere?

    Perchè anche per questo CLSID, ho notato che al path
    HKEY_CLASSES_ROOT\CLSID
    ce ne sono tantissi, tra cui anche quello di mailto ("{3050f3DA-98B5-11CF-BB82-00AA00BDCE0B}") che come valore ha "Microsoft HTML Mailto Pluggable Protocol"

    Quindi ricapitolando devo solo cercare se oltre a queste due posizioni devo mettere mano in qualche altra parte del registry e se questi CLSID sono liberi o devono essere assegnati da qualcuno.

    Altri aiuti please

  5. #5
    Credo che qui si ricada più nella programmazione... comunque devi scrivere un componente COM che esponga classi che implementano particolari interfacce; durante la sua registrazione esso dovrà aggiungere la sua chiave in HKCR (come fanno di solito automaticamente tutti i componenti COM) ed inserire un riferimento al suo CLSID nella maniera che hai visto da te sotto HKCR\Protocols\Handlers. Dai un'occhiata a questa pagina di MSDN per informazioni dettagliate.
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.