Chm yang diunduh diblokir, apakah ada solusinya?

1

File CHM yang diunduh sering ditandai sebagai berpotensi jahat oleh Windows, yang secara efektif memblokir semua halaman html di dalamnya. Ada perbaikan yang mudah (cukup buka blokir file setelah Anda mengunduhnya), tetapi saya bertanya-tanya apakah ada cara yang lebih baik untuk menyediakan file chm yang tidak diblokir.

Bagaimana jika saya mengunduh file chm (sebagai aliran byte) dari server kami di dalam aplikasi, kemudian menulis semua data ke file pada disk. Apakah masih akan diblokir?

Apakah masih ada cara lain yang lebih baik?


Sunting: Ya, mengunduh file menggunakan System.Net.WebClient memang memecahkan masalah. Tapi, apakah masih ada cara yang lebih baik?


sumber

Jawaban:

3

Klik kanan file .chm -> Properties dan kemudian klik tombol "Unblock" dan Anda siap untuk pergi!

Ranhiru Jude Cooray
sumber
1

Biasanya MSFT, pertama-tama memperkenalkan omong kosong seperti. Chm dan kemudian harus memblokirnya untuk membuat kapal mereka dengan jutaan lubang lebih aman. Semua baik-baik saja, tetapi mengapa tidak menampilkan pesan kesalahan yang tepat dengan penjelasan apa yang terjadi ketika pengguna tidak melihat apa pun di file chm.

nojetlag
sumber
1

Secara teknis apa yang terjadi adalah ketika IE mengunduh file, ia menggunakan fitur yang tidak banyak diketahui dari sistem file Windows di mana Anda dapat memiliki aliran data tambahan yang dilampirkan ke file. IE menambahkan: Zone.Identifier stream tempat mereka menulis data gaya awal ini dalam bentuk:

[ZoneTransfer]
ZoneId=$id

$ Id mengidentifikasi zona kepercayaan untuk file itu dan diatur ke URLZONE_INTRANET ( http://msdn.microsoft.com/en-us/library/ms537175(v=vs.85).aspx ).

Salah satu cara untuk memperbaikinya adalah mengubah $ id ke URLZONE_LOCAL_MACHINE. Cara lain adalah dengan menghapus aliran ini.

Anda dapat melihat bagaimana saya melakukannya di C ++ untuk penampil PDF Sumatra saya ketika kami menambahkan dukungan CHM: http://code.google.com/p/sumatrapdf/source/detail?r=4639 dan http://www.google. com / codesearch # 8WOCRDPt-u8 / trunk / src / utils / FileUtil.cpp & q = SetZoneIdentifier% 20paket: http: //sumatrapdf%5C.googlecode%5C.com&l=340

Saya tidak yakin apakah Anda akan menganggapnya sebagai solusi yang lebih baik untuk mengunduh file sendiri.

Krzysztof Kowalczyk
sumber
0

Ini dugaan, tetapi apakah Anda yakin Windows yang menandainya? Mungkinkah itu internet explorer, yang dalam hal ini hanya menggunakan browser lain?

JRL
sumber
1
tidak, ini masih sama dengan Firefox - unduh CHM dengannya dan juga ditandai "tidak aman" dan tidak akan ditampilkan sampai Anda secara manual membuka blokirnya ...
marc_s
1
Sama dengan Chrome, file yang diunduh diberi tag.