ปิดการใช้งานตัวเลือก "เปิดด้วย" ในการดาวน์โหลด Firefox (บังคับให้ Firefox บันทึกไฟล์ทั้งหมดเสมอ)


9

อาการที่เกิดขึ้น

  • ผู้ใช้เปิดบัญชีเว็บเมลคลิกที่ไฟล์แนบและคลิก "เปิดด้วย Word"
  • ผู้ใช้แก้ไขเอกสารที่มีค่าของพวกเขาเป็นเวลาหลายชั่วโมง ผู้ใช้บันทึกคำว่า doc และออก
  • ผู้ใช้ไม่พบไฟล์
  • ผู้ใช้คว้าไฟฉายและโกย (ขั้นตอนสุดท้ายเป็นทางเลือก) .

enter image description here

สาเหตุของปัญหา

กล่องโต้ตอบดาวน์โหลดสำหรับ Firefox แสดงสองตัวเลือก: " บันทึกไฟล์ "และ" เปิดด้วย "

enter image description here

ด้วยการเลือก "เปิดด้วย" Firefox จะดาวน์โหลดไฟล์ไปยังโฟลเดอร์ชั่วคราวและเปิดแอปพลิเคชันที่เกี่ยวข้อง ฉันต้องการป้องกันพฤติกรรมนี้ .

สิ่งที่ฉันพยายาม

ฉันทำการบ้านและค้นหา MozillaZine และฐานความรู้ (เช่น ที่นี่ , ที่นี่ หรือ ที่นี่ ) และหากฉันเข้าใจถูกต้องกล่องโต้ตอบดาวน์โหลดจะขึ้นอยู่กับส่วนขยายของไฟล์ แต่จะขึ้นอยู่กับประเภทของไฟล์ mime

ฉันรู้ว่าฉันสามารถตั้งค่าพฤติกรรมได้โดยไปที่การตั้งค่า & gt; แอปพลิเคชันเช่นนี้:

enter image description here

อย่างไรก็ตาม:

  • Firefox ขึ้นอยู่กับประเภท mime แจ้งจากเซิร์ฟเวอร์ . แต่มันอาจเป็นตัวเองไม่ถูกต้องละเว้นหรือซ้ำซ้อน (ประเภทไฟล์เดียวสามารถมีหลายประเภท mime หรือในทางกลับกัน)
  • Firefox จดจำกล่องกาเครื่องหมาย "ทำสิ่งนี้โดยอัตโนมัติสำหรับไฟล์เช่นนี้นับจากนี้เป็นต้นไป" สำหรับแต่ละประเภท หากฉันต้องการบังคับใช้พฤติกรรมบางอย่างฉันต้องตั้งค่าด้วยตนเองสำหรับ mime แต่ละประเภท
  • ฉันไม่สามารถสร้างรายการใหม่ในรายการแอปพลิเคชัน มันจะถูกบรรจุเฉพาะเมื่อมีการดาวน์โหลดใหม่จากประเภท mime ที่ไม่ได้ลงทะเบียน เท่านั้นจากนั้นฉันสามารถเปลี่ยนพฤติกรรมในรายการ
  • ฉันสามารถแก้ไข mimetypes.rdf ไฟล์บังคับให้มีพฤติกรรม "บันทึกไฟล์" แต่ฉันไม่สามารถหาวิธีบังคับใช้กับไฟล์ทั้งหมดได้

สิ่งที่ฉันต้องการคือวิธีที่ (ดีกว่า) ทำให้เป็นไปไม่ได้ที่จะเปิดด้วยแอปพลิเคชันภายนอกหรืออย่างน้อยก็เพื่อบังคับให้บันทึกไฟล์

ฉันรู้ว่าฉันสามารถตั้งค่า browser.altClickSave ใน about:config เพื่อให้มีการบันทึกไฟล์เมื่อฉันคลิกที่กด ALT แต่ฉันต้องการโซลูชันที่ไม่ต้องการการโต้ตอบกับผู้ใช้


เพียงดำเนินการอัตโนมัติเหล่านี้ ... ลองสิ่งนี้: addons.mozilla.org/en-US/firefox/addon/imacros-for-firefox/...
climenole

อัตโนมัติการดำเนินการอะไร เพียงคลิกเพื่อดาวน์โหลด คำถามของฉันยาวเพราะฉันต้องการให้ข้อมูลที่เพียงพอ นอกจากนี้หากผู้ใช้ไม่สามารถใส่ใจ (หรือไม่เข้าใจว่าเกิดอะไรขึ้น) ให้คลิกดาวน์โหลดแทนที่จะเปิดด้วยแน่นอนว่าโซลูชันที่ซับซ้อนมากขึ้นจะไม่ทำงาน ฉันต้องการบางสิ่งที่ไม่ต้องการการโต้ตอบกับผู้ใช้
That Brazilian Guy

ดังนั้นคุณต้องการคอมพิวเตอร์ที่ไม่มีผู้ใช้คอมพิวเตอร์ ... ตกลง :)
climenole

ฉันเพิ่งค้นพบว่าลินุกซ์มี /usr/share/mime-info/gnome-vfs.mime และ /usr/share/mime/globs โฟลเดอร์ ฉันไม่แน่ใจว่าจะมีผลต่อพฤติกรรมของ Firefox หรือไม่ และเห็นได้ชัดว่ามันไม่ได้อยู่ใน Windows
That Brazilian Guy

1
คุณสามารถแก้ไขประเภท MIME ขาเข้าได้ด้วยหนึ่งในหลายนามสกุล ตั้งเป็นประเภท MIME ที่ดาวน์โหลดอยู่เสมอ ขออภัยเวลาไม่เพียงพอสำหรับคำตอบเต็มรูปแบบ แต่คุณฉลาดพอที่จะรับความคิด
RockPaperLizard

คำตอบ:


4

การสร้างไฟล์ mimeTypes.rdf หลักที่คุณปรับใช้กับผู้ใช้เป็นทางออกที่ดีที่สุด

เปิด mimeTypes.rdf ในเครื่องมือแก้ไขที่จัดการเอกสารสไตล์ XML ได้ดี (เช่น Notepad ++)

ค้นหาและแทนที่บรรทัดแรกด้วยบรรทัดที่สอง:

NC:saveToDisk="false"
NC:saveToDisk="true"
  and
NC:alwaysAsk="true"
NC:alwaysAsk="false"  

ฉันยังจะ "หว่านเมล็ด" เจ้านายของคุณ mimeTypes.rdf ด้วยสิ่งแปลกใหม่ที่ผู้ใช้ของคุณได้สะสม:

  1. คัดลอก mimeTypes.rdf จากผู้ใช้ 2-3 คนด้วยการใช้งานไฟล์แนบของเว็บเมลที่หนักที่สุด
  2. เปรียบเทียบประเภทของผู้ใช้กับนายของคุณ:

cmd.exe

find "<RDF:li RDF:resource=" Master_mimeTypes.rdf > MasterMimes.txt   #generate list of mimetypes
find "<RDF:li RDF:resource=" User1_mimeTypes.rdf > User1Mimes.txt     #generate list of mimetypes
fc MasterMimes.txt User1Mimes.txt                                     #compare lists of mimetypes

หากคุณพบประเภทใหม่ใด ๆ คว้าทั้งบทจากไฟล์ของผู้ใช้และเพิ่มไปยังต้นแบบ


น่าเสียดายที่มันไม่สามารถใช้งานได้เลย ฉันไม่รู้ว่าฉันจะดาวน์โหลดประเภทใดในอนาคต นอกจากนี้บางประเภทไฟล์ (เช่น exes) ไม่ทำงานเลย
Synetech

0

บันทึก: คำแนะนำเฉพาะสำหรับ Windows แต่จะใช้ได้กับ OS อื่น ๆ วิธีนี้จะใช้ไม่ได้กับ PDF หากไม่มี ปิดการใช้งาน PDF.js และ / หรือโปรแกรมเสริม PDF viewer อื่น ๆ . และจะไม่ทำงานกับไฟล์ที่ Firefox สามารถเปิดได้โดยตรง (เช่นไฟล์ MP3 รูปภาพวิดีโอ text/plain ไฟล์ ฯลฯ )


วิธีนี้ไม่ได้เป็นการโต้ตอบกับผู้ใช้ฟรีเท่าที่คุณต้องการ แต่ถ้าคุณมีความสามารถในการจัดหา Firefox รุ่นที่ปรับแต่งเองหรือคุณสามารถเรียกใช้สคริปต์แบบแบทช์บนคอมพิวเตอร์ของผู้ใช้แต่ละคนคุณสามารถลอง:

  1. ติดตั้งรุ่นเบต้าล่าสุดของ บันทึกโฟลเดอร์อัตโนมัติ (ASF)

  2. สร้างตัวกรองเพื่อจับคู่ไฟล์ประเภทใดก็ได้จากโดเมนใด ๆ เช่นนี้
    ยังให้แน่ใจว่าคุณอ่าน คู่มือการติดตั้งครั้งที่ 1 ASF Filter

  3. กำหนดค่า ASF เพื่อเลือกโดยอัตโนมัติ Save File จากกล่องโต้ตอบบันทึก Choose auto save

  4. ติดตั้ง FEBE และสำรองข้อมูลโปรไฟล์เบราว์เซอร์ (รวมถึงการตั้งค่า) และกู้คืนในคอมพิวเตอร์แต่ละเครื่อง

หรือถ้าคุณสามารถเรียกใช้สคริปต์ชุดงานบนคอมพิวเตอร์ของผู้ใช้เรียกใช้สคริปต์ต่อไปนี้ (หลังจากติดตั้ง ASF):

 ชื่อไฟล์: กำหนดค่า ASF.bat  @ECHO OFF
:: ฆ่า Firefox ถ้ามันทำงานอยู่มิฉะนั้นจะไม่อัพเดท prefs.js
เริ่ม "" / WAIT / B "taskkill" / F / IM firefox.exe

:: ค้นหาไดเรกทอรีโปรไฟล์ผู้ใช้สำหรับ Firefox และนำทางไปยังมัน
SET ProfileDir =% APPDATA% \ Mozilla \ Firefox \ Profiles
CD / D% ProfileDir%
FOR / F "tokens = * USEBACKQ" %% F IN (`dir / A: D / B ^ | find" default "`) DO (
SET "ProfileDir =% ProfileDir% \ %% F"
)
CD / D% ProfileDir%

:: อ่านการตั้งค่า ASF จาก 'extpref.txt' และผนวกเข้ากับไฟล์ปรับแต่งของ Firefox
TYPE% ~ dp0% \ extpref.txt & gt; & gt; prefs.js

:: เนื่องจากชื่อผู้ใช้สำหรับผู้ใช้แต่ละรายมีการเปลี่ยนแปลงให้ค้นหาเส้นทางไปยัง "ดาวน์โหลด"
:: โฟลเดอร์และผนวกเข้ากับ prefs.js
SET DownloadsDir =% USERPROFILE% \ Downloads
ECHO user_pref ("extensions.asf.filters0.folder", "% DownloadsDir: \ = \\%"); & gt; & gt; prefs.js
ECHO user_pref ("extensions.asf.lastpath", "% DownloadsDir: \ = \\%"); & gt; & gt; prefs.js

หยุด 
 ชื่อไฟล์: extpref.txt  user_pref ("extensions.asf.dialogForceRadio", จริง);
user_pref ("ส่วนขยาย asf.dialogaccept", จริง);
user_pref ("Extensions.asf.filters0.active", จริง);
user_pref ("Extensions.asf.filters0.domain", "*");
user_pref ("Extensions.asf.filters0.domain_regexp", เท็จ);
user_pref ("Extensions.asf.filters0.filename", "*");
user_pref ("Extensions.asf.filters0.filename_regexp", เท็จ);
user_pref ("Extensions.asf.filtersNumber", 1);
user_pref ("Extensions.asf.tempdomain", "http://chrisblattman.com");
user_pref ("extensions.asf.useDownloadDir", จริง);
user_pref ("extensions.asf.version", "1.0.5bRev128");
user_pref ("extensions.asf.viewdloption", จริง);
user_pref ("extensions.asf.viewpathselect", จริง);
user_pref ("extensions.asf@mangaheart.org.install-event-fired", จริง) 

สคริปต์รับอินพุตจาก extpref.txt ซึ่งควรจะอยู่ในโฟลเดอร์เดียวกับสคริปต์และต้องมีการกำหนดค่าตามความชอบสำหรับ ASF ซึ่งจะได้รับการอัปเดตในไฟล์การตั้งค่าของ Firefox (prefs.js)

คุณสามารถอ่านค่ากำหนดจาก about:config ภายใต้ extensions.asf.* หรือเพียงแค่รับพวกเขาจาก prefs.js ซึ่งโดยทั่วไปจะอยู่ในโฟลเดอร์:

%APPDATA%\Mozilla\Firefox\Profiles\????????.default\

เมื่อสร้าง extpref.txt ตรวจสอบให้แน่ใจว่าคุณไม่ได้รวม extensions.asf.filters0.folder และ extensions.asf.lastpath เนื่องจากพวกเขาจะแตกต่างกันสำหรับผู้ใช้แต่ละคน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.