RasGetEntryProperties RasSetEntryProperties

Baguauda Messages postés 219 Date d'inscription mercredi 31 août 2005 Statut Membre Dernière intervention 28 novembre 2008 - 7 sept. 2007 à 16:52
cs_Stephane33 Messages postés 630 Date d'inscription samedi 15 février 2003 Statut Modérateur Dernière intervention 9 octobre 2011 - 8 sept. 2007 à 22:21
    Bonjour,
je cherche un moyen de créer une connexion automatiquement, car pour le moment on est obligé de passé par Settings/Network and Dial-Up connections.
Je tourne sur un Win CE 4.2

Il semblerait qu'avec les methodes RasGetEntryProperties et RasSetEntryProperties ce soit possible

public struct RASIPADDR
{
    Byte a, b, c, d;
}
public struct RasEntry
    {
        long dwSize;
        RasEntryOptions option;
        long countryId;
        long countryCode;
        string areaCode;
        string localPhoneNumber;
        string alternateNumber;
        RASIPADDR ipAddr;
        RASIPADDR ipAddrDns;
        RASIPADDR ipAddrDnsAlt;
        RASIPADDR ipAddrWins;
        RASIPADDR ipAddrWinsAlt;
        long frameSize;
        RASNetProtocols fNetProtocols;
        RasFramingProtocols framingProtocol;
        string scriptName;
        string autodialDll;
        string autodialFunc;
        string deviceType;
        string deviceName;
       
        //Devise Prop
        string x25Padtype;
        string x25Address;
        string x25Facilities;
        string x25UserData;

       
        long channels;
        long dwReserved1;
        long dwReserved2;
        long customAuthKey;

        /*
        long NT4En_SubEntries;
        long NT4En_DialMode;
        long NT4En_DialExtraPercent;
        long NT4En_DialExtraSampleSeconds;
        long NT4En_HangUpExtraPercent;
        long NT4En_HangUpExtraSampleSeconds;
        long NT4En_IdleDisconnectSeconds;
        long Win2000_Type;
        long Win2000_EncryptionType;
        long Win2000_CustomAuthKey;
        byte Win2000_guidId;
        string Win2000_CustomDialDll;
        long Win2000_VpnStrategy;*/
    }

[DllImport("Coredll.dll", EntryPoint = "RasGetEntryProperties")]
        public static extern long RasGetEntryProperties(
            string lpszPhonebook,
            string lpszEntry,
            out RasEntry lpRasEntry,
            long dwEntryInfoSize,
            IntPtr lpbDeviceInfo,
            long lpdwDeviceInfoSize);

[DllImport("Coredll.dll", EntryPoint = "RasSetEntryProperties")]
        public static extern long RasSetEntryProperties(
            string lpszPhonebook,
            string lpszEntry,
            RasEntry lpRasEntry,
            long dwEntryInfoSize,
            IntPtr lpbDeviceInfo,
            long lpdwDeviceInfoSize);

Ensuite l'idée est de faire un get pour recupérer les valeur par défaut (RasEntry) faire les modifications voulu et ensuite faire un set pour crée la connexion.

Mais la je calle sur le premier get
RasGetEntryProperties(?,?,? , ?, IntPtr.Zero,0);

j'ai bien des exemple en C mais je n'arrive pas à transposer:
DWORD dwSize, dwDevInfo, dwError;
RASENTRYRasEntry;

dwDevInfo = 128;
dwError = 0;

if (dwError = RasValidateEntryName(NULL, lpszName))
{
return dwError;
}

memset(&RasEntry,0,sizeof(RASENTRY));
dwSize = sizeof(RASENTRY);
RasEntry.dwSize = dwSize;

if (dwError = RasGetEntryProperties(NULL, _T(""),&RasEntry, &dwSize, NULL,
NULL))

Si quelqu'un a déjà utilisé cette technique?

Merci

1 réponse

cs_Stephane33 Messages postés 630 Date d'inscription samedi 15 février 2003 Statut Modérateur Dernière intervention 9 octobre 2011 1
8 sept. 2007 à 22:21
Je sais pas si cette page peut-aider, mais pour l'instant je n'ai pas eu l'occasion d'aborder cet aspect technique.
Avec OpenNetCF, il n'y aurait pas une procédure plus simple.
ici il y a un exemple de connexion GPRS, mais rien de consistant pour mettre une connexion en set
de nombreuses questions de forums sur la structure de rasEntry mais renvoie sur cet article
Ce n'est pas visiblement une ressource facilement accessible. Je reviens sur ce post si je trouve quelques lignes concluantes.

Le savoir ne sert que si il est partagé par tous
0
Rejoignez-nous