15.12.2017, Vladimír Klaus, navštíveno 1628x

Delphi
Internet

Nedávno jsem řešil připojení na sFTP server, které nemělo vykazovat žádný problém už i z toho důvodu, že připojení na daný server již několikrát prošlo. Bohužel komponenta zodpovědná za připojení při komunikaci se serverem vrátila zajímavou chybu: An existing connection was forcibly closed by the remote host. A pod tím ještě chyba WindowsErrorCode: 0x2746.

Po dlouhém a zcela zoufalém pátrání, zkoušením všeho možného, včetně přidávání IP adres na whitelist, zkoumání nastavení routerů a firewallů, bylo přistoupeno ke zcela trapnému pokusu - ověřit, zda jsou uživatelské jméno a heslo v pořádku. A nebyly! Proč vrácená chyba neukáže něco přijatelnějšího a lépe vedoucí k odhalení problému? Těžko říci.

Ale možná je to jen problém dané komponenty, daného serveru či nějakého nastavení. Protože pokud použijete se špatnými údaji jinou aplikaci, dostanete mnohem rozumnější hlášení: Server unexpectedly closed network connection. Authentication failed. Tou aplikací, která dá lepší hlášení je vynikající WinSCP.

Samozřejmě, že důvodem mohlo být opravdu něco jiného, ale bylo by báječné, kdyby se to dalo z chyby nějak lépe vyčíst a chybový kód vás nevedl zcela špatným směrem.