DanHen:S tebou je to těžký.
Tak znova.
Rozeberu to co jsem psal hned v prvním příspěvku.
Je soubor na nějakém serveru.
Dejme tomu, že ten server má nastavení jako forum.zive.cz:
https://www.ssllabs.com/ssltest/analyze ... um.zive.czTedy podporuje TLS 1.3 a TLS 1.2. A nepodporuje TLS 1.1 a starší. Což je spravně a je to běžné nastavení serveru v roce 2024.
A pak tam máš ještě uvedené podporované šifrovací sady toho serveru, například šifra TLS_AES_128_GCM_SHA256 atd.
Když člověk bude chtít stáhnout soubor z takového serveru, tak to stáhne, protože:
1) prohlížeče podporují TLS 1.3 a TLS 1.2 a běžné šifry na uvedeném serveru, naopak dokonce vyžadují např. min verzi TLS 1.2. Když tedy budu chtít stáhnout soubor z takového serveru v prohlížeči tak prohlížeč si se serverem domluví verzi a šifru, na které proběhne komunikace, např. TLS 1.3 a TLS_AES_128_GCM_SHA256. A z toho se dá vyvozovat to, že ten server minimálně TLS 1.2 podporuje a podporuje i běžné šifry.
2) Podobně jako v bodě 1) to platí pro různé programy, např. WinSCP, proto ti to přes tento program funguje.
3) Podobně jako v bodě 1) to platí pro .NET programy, protože ve Windows 10 je předinstalovaný .NET framework 4.8 a ve Windows 11 .NET framework 4.8.1 a tyto frameworky TLS 1.2 a TLS 1.3 podporují a podporují i běžné šifry na serveru. A proto jak píšeš ti ten tvůj program na pc mimo tvůj pc funguje.
4) Dokonce by měl ten program fungovat i na starších frameworcích, jako je ten ve VS2019 .NET Framework 4.7.2 (defaultně ve Windows 10 1803 a 1809).
Takže problém by neměl vzniknout, jenže ty ho máš.
Píšeš, že tipuješ, že ti chybí dll. Podle mě je to ale nesmysl, kdyby ti chyběla nějaká dll, tak ti to vyhodí chybovou hlášku, že ti chybí nějaká dll. A .NET framefork tam máš.
Já v .NET neprogramuju, ale jak už píšu nebo naznačuju od prvního příspěvku, prostě máš rozdrbané nastavení Windows nebo .NET framework a ten tvůj program na tvém pc prostě z toho důvodu posílá na server buď nepodporované TLS nebo nepodporované šifry.
Takže řešením je buď si dát do pořádku nastavení Windows nebo .NET frameworku tak, aby ti na server posílal podporované TLS a šifry tak jak to posílá ten program ve Win 10 a Win 11 mimo tvůj pc ... nebo si TLS a šifry nastav přímo v programu a vynuť si prostě takové, které podporuje ten server.
... a pár poznámek,
"Aplikacia targetuje na .NET 4.0" Jako fakt .NET 4.0??? To je verze z VS2010, od VS2022 už nepodporovaná. Ale i na ní by to jet mělo, když ti ten program funguje na počítačích s Windows 10 a Windows 11 mimo tvůj pc... čistě teoreticky ti to tam třeba bere nějaké nastavení z .NET 4.0 skrz VS2019, které normálně už ve Win 10 a Win 11 nejsou... => v tom případě se budu opakovat "nebo si TLS a šifry nastav přímo v programu a vynuť si prostě takové, které podporuje ten server." Je i možné, že se to vynucení bude dát někde nastavit v registru Windows.
"pokial je na danom stroji nainstaleny framework vyssi ako 4.0"
Což jsou všechny, Win 10 4.8 (nebo 4.8.1) a Win 11 4.8.1 a psal jsi, že to na Win 10 a Win 11 funguje...
No jak cheš, je to tvůj boj, já jsem k tomu už řekl vše.
Klidně si řeš chybějící dll a klidně dál ignoruj co píšu