Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Maaahlzeit!

Ich versuche mich gerade erfolgelos an folgendem:

hInternet = InternetOpen(szAppName, INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, INTERNET_FLAG_ASYNC);

hFtpConnect = InternetConnect(hInternet, _("Ftp://Ftp.Beispiel.com/"), INTERNET_INVALID_PORT_NUMBER, NULL, NULL, INTERNET_SERVICE_FTP, 0, 0);

Leider schlägt letztere Funktion immer fehl, was wohl an unserem Firmen-Proxy liegt. Er verlangt nämlich eine Authentifizierung des Users. Ich weiss, dass ich der Funktion Benutzer u. Passwort mit auf den Weg geben kann, allerdings nur für einen Http-Zugriff. Das funktioniert auch wunderbar.

In der Plattform-SDK habe ich einen Artikel gefunden, der die Lösung meines Problems beschreibt, allerdings auch nur für das

Http-Protokoll. Dort wird auch erwähnt, dass es zur Zeit keine Möglichkeit gibt, die Lösung auf's Ftp-Protokoll zu übertragen. Nur: Handelsübliche Browser können's doch auch?!?

Ich benutze übrigens das Visual Studio 6.0 und die Win32-API, keine MFC. Weis jemand Rat?

Danke und Gruß

  • Autor

Ja schon, aber dies ist ja die Authentifizierung für den Ftp-Server. Ich muss mich - bevor ich überhaupt an ihn rankomme - gegenüber dem Proxy-Server ausweisen. Und da liegt das Problem...

  • Autor

Jo, super, das sieht gut aus. Hab's zwar noch nicht ausprobiert, aber es ist genau mein Problem. Wenn ich nicht weiterkomme, werde ich mich nochmal hier melden, bis dahin vielen Dank !!

Gruß und Kniefall

  • 2 Wochen später...
  • Autor

Da bin ich wieder...und habe inzwischen eine einwandfreie Verbindung zu beliebigen Ftp-Servern hergestellt, Dateien runtergezogen etc. Allerdings muss ich mich immer wieder ärgern, wenn der Server überlastet ist oder der Verbindungsaufbau aus sonstigen Gründen seeeehr lange dauert (beim IE scheint dann der blaue Fortschrittsbalken stehenzubleiben). Die einzige Möglichkeit, den Vorgang abzubrechen, ist, den Thread gewaltsam zu beenden ( TerminateThread(...) ). Daher muss ich das ganze jetzt asyncron auf die Kette bekommen. Das sieht dann folgendermaßen aus:

//////////////////////////////////////////////////////////////

// WinINet-API initialisieren

//

static HINTERNET hInternet, hResource;

hInternet = InternetOpen(szModuleFileName, INTERNET_OPEN_TYPE_PRECONFIG, NULL, 0, INTERNET_FLAG_ASYNC);

/////////////////////////////////////////////////////

// Callback-Funktion für asyncronen Download

// anmelden

//

InternetSetStatusCallback(hInternet, AsyncLoadFunc));

//////////////////////////////////////////////////

//

// HTTP-Anfrage an URL absetzen

//

hResource = InternetOpenUrl(hInternet, pUrl, NULL, 0, INTERNET_FLAG_RELOAD | INTERNET_FLAG_DONT_CACHE | INTERNET_FLAG_PRAGMA_NOCACHE, 0);

if(!hResource && (GetLastError() == ERROR_IO_PENDING))

{

//////////////////////////////////////

//

// Anfrage erfolgreich abgesetzt

//

}

Soweit klappt's auch, alle Funktionen melden "Erfolg". Bloß: meine Callback-Funktion kommt nie zum Aufruf! Und nu? Hier noch ein wertvoller Link, der mich an dieser Stelle aber auch nicht weiterbringt.

http://www.codeproject.com/useritems/asyncwininet.asp#xx84726xx

Gruß

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.