DFÜ-Verbindung anlegen in WindowsXP



  • hmm so?...

    bool succes = DialUp();
    {
         RASDIALPARAMS rdParams;
         rdParams.dwSize = sizeof(RASDIALPARAMS);
    .
    .
    .
    .
    

    da sagt er -> aufruf der undefinierten funktion dialup.

    aber ich glaube das ich damit auch nicht mehr erreiche als ich schon habe, die verbindung aufbauen.

    aber das hab ich ja schon hinbekommen, hier wird überall was von CreateRasEntry geschrieben.

    hab auch hier eine anleitung auf englisch gefunden.. http://www.codeproject.com/internet/dialupsetup.asp

    und jetzt bin ich am haare raufen weil ich es dort schwarz auf weis stehen habe wie es gemacht wird aber ich bekomm es ned hin *frussst*

    ich will doch nur eine neue dfü verbindung anlegen 😞



  • Hast Du die DialUp-Funktion eigentlich deklariert? Muss es den wirklich eine DFÜ-Verbindung sein? Wer nutzt den sowas heute noch?

    // Edit:
    jetzt seh ich das erst. bool success=... sollte natürlich im Funktionsaufruf und nicht im Funktionsbezeichner stehen.



  • ja daß ist ja das problem, daß auf viele dieser c++ code beispiele trifft und ich nicht ganz verstehe, wie ich in eine void button funktion, noch mal die bool funktion setzen kann?!

    dazu kommt daß form mir auch das return nicht wieder geben will..

    in der verbindung soll über tftp ascii text übertragen werden, auf der ip ebene ist das kein problem gewesen.
    aber nicht alle geräte wohin die daten geschickt werden sollen haben, öffentliche ip-adressen, sondern nur eine isdn einwahl möglichkeit.

    deshalb komm ich nicht drum rum, wenn das programm nichts halbes werden soll 😉

    könntest du mir bitte kurz erklären wie du das meinst mit dem -> Funktionsaufruf und nicht im Funktionsbezeichner?

    hast du dir mal den link angeschaut? vielleicht kannst du es verstehen wie die CreateRasEntry funktionieren soll?

    ich danke dir vielmals für deine hilfe @Rostfrei



  • Das Beispiel scheint unter Visual C++ mit der MFC geschrieben zu sein. Da kenne ich mich micht so gut aus.
    Jetzt zu Deinem Quellcode:
    (hab mir den Inhalt auf B&M nict angeschaut, Du wirst ja wissen was Du progst 😉 )

    // Funktion noch im Header deklarieren
    // event. in der Formklasse
    bool DialUp() 
    { 
         RASDIALPARAMS rdParams; 
         rdParams.dwSize = sizeof(RASDIALPARAMS); 
    
         rdParams.szEntryName[0] = '\0'; 
    
         lstrcpy(rdParams.szPhoneNumber, szPhoneNumberToDial); 
         rdParams.szCallbackNumber[0] = '\0'; 
    
         lstrcpy(rdParams.szUserName, szUserName);  
    
         lstrcpy(rdParams.szPassword, szPassword);  
    
         rdParams.szDomain[0] = '\0'; 
    
         HRASCONN hRasConn = NULL; 
    
         DWORD dwRet = RasDial(NULL, NULL, &rdParams, 0L, NULL, &hRasConn); 
    
             if(dwRet == 0){return true;} 
    
             char  szBuf[256]; 
    
         if(RasGetErrorString((UINT)dwRet, (LPSTR)szBuf, 256) != 0 ) 
         { 
               wsprintf((LPSTR)szBuf, "Undefined RAS Dial Error (%ld).", dwRet); 
               RasHangUp(hRasConn); 
               AfxMessageBox(NULL, (LPSTR)szBuf, "Error", MB_OK | MB_ICONSTOP); 
         } 
    
         return false; 
    }
    
    void __fastcall TForm1::Button1Click(TObject* Sender)
    {
      bool success = DialUp();
      if(success == true)
        ShowMessage("Erfolgreich");
      else ShowMessage("Fehler");
    }
    
    }
    


  • auch nicht schlecht,

    jetzt weis ich endlich mal wie ich solche codesnipsel benutzen kann danke schön 🙂

    sorry wenn ich jetzt noch etwas auf dem herzen habe 😉

    wie kann ich dies hier benutzen?

    API Reference

    CreateRasEntry

    Use this function to create a new phone-book entry.

    BOOL CRasEntry::CreateRasEntry(CString strEntryName, RASENTRY &RasEntry);

    Parameters
    strEntryName: Specifies a string containing the phone-book entry to use to establish the connection.
    RasEntry: RASENTRY structure that contains the new connection data to be associated with the phone-book entry specified by the strEntryName parameter.

    ======================================
    SetEntryDialParams

    Specifies the user name and the password for the specified phone-book entry.

    BOOL CRasEntry::SetEntryDialParams(CString strEntryName, CString strUsername, CString strPassword, BOOL bRemovePassword);

    Parameters
    strEntryName: Specifies a string containing the phone-book entry to use to establish the connection.
    strUsername: Specifies a string containing the user's user name.
    strPassword: Specifies a string containing the user's password.
    bRemovePassword: Indicates if the password needs to be stored. If bRemovePassword is TRUE, the password will not be saved.

    ich bekomm daß einfach nicht hin, aber es muss doch es muss einfach irgendwie gehen

    die infos hab ich von hier -> http://www.codeproject.com/internet/dialupsetup.asp



  • ich bin leider immer noch nicht weiter 😞

    bitte bitte um hilfe



  • wäre es nicht mal ne idee ein tutorial über dfü verbindungen zu schreiben?! 😕

    wie man sie mit parametern erstellt und vebinden läst?
    mal nicht zu komlitziert, mit kleiner code erläuterung 👍
    den so richtig viel infos gibts nicht wirklich für anfänger, alles so kompliziert 😞

    wünsche noch was



  • Hallo

    Naja ich bin der Meinung das Anfänger nicht mit DFÜ-Einstellungen rumspielen sollten, insbesondere nicht wenn sie nicht mit Konventionen der WinAPI vertraut sind. Fortgeschrittene sollten alles notwendige aus der MSDN lesen können, und offene Fragen im WinAPI-Forum klären.

    bis bald
    akari



  • Hallo,

    also anlegen einer WindowsVerknüpfung auf dem Desktop oder Einstellen der Bildschirmschoner einstellungen und zb Gerätemanager.
    Wie auch das einrichten einer Verbindung in der Verbindungsliste von Windows, gehören in die WinAPI Ecke verstehe ich das richtig das der aufruf "CreateRasEntry" dazugehört.

    Also wenn ich im Windows auf neue Verbindungerstellen klicke, daß auch in diesem Fenster der gleiche aufruf "CreateRasEntry" benutzt wird?

    aus der MSDN...

    DWORD RasCreatePhonebookEntry(
      HWND hwnd,
      LPCTSTR lpszPhonebook
    );
    

    er brindt hier keine fehlermeldung! aber es öffnet sich kein dialog!?

    Also ich werds noch mal in der WinAPI ecke versuchen, ist ja nicht so das ich es nciht irgendwann einmal besser verstehen möchte 🙄

    Danke schön



  • hawkdz schrieb:

    also anlegen einer WindowsVerknüpfung auf dem Desktop oder Einstellen der Bildschirmschoner einstellungen und zb Gerätemanager.
    Wie auch das einrichten einer Verbindung in der Verbindungsliste von Windows, gehören in die WinAPI Ecke verstehe ich das richtig das der aufruf "CreateRasEntry" dazugehört.

    Das sind alles WinAPI-Funktionen. Natürlich bauen auch die meisten VCL-Klassen auf WinAPI-Sachen auf, also ist die Grenze nicht fest. Aber grad zu solch ungewöhnlicheren Sachen wie du sie genannt hast ist das WinAPI-Foru mgeeigneter, denn auch dort gibt es eine FAQ.

    Also wenn ich im Windows auf neue Verbindungerstellen klicke, daß auch in diesem Fenster der gleiche aufruf "CreateRasEntry" benutzt wird?

    Höchstwahrscheinlich.

    aus der MSDN...

    DWORD RasCreatePhonebookEntry(
      HWND hwnd,
      LPCTSTR lpszPhonebook
    );
    

    er brindt hier keine fehlermeldung! aber es öffnet sich kein dialog!?

    Da das kein vollständiger Code ist kann ich nicht viel dazu sagen.

    bis bald
    akari


Anmelden zum Antworten