2 salinan persis autorun.inf, satu berfungsi satu tidak [duplikat]

19

Saya memiliki dua file Autorun.inf, kode di dalamnya sama persis. Tapi hanya 1 yang bekerja, yang lain tidak berfungsi.

Yang bekerja disalin dari DVD, dan saya mengeditnya. Yang tidak berfungsi dibuat di desktop saya dengan mengganti nama file teks (saya benar menamainya kembali).

Yang ini berhasil

masukkan deskripsi gambar di sini

Yang ini tidak berhasil

masukkan deskripsi gambar di sini

Jika Anda ingin file:

Bekerja satu: http://www16.zippyshare.com/v/64IutSu4/file.html

Tidak berfungsi: http://www98.zippyshare.com/v/zEqU2BZ7/file.html

Adakah yang tahu mengapa tidak yang saya buat di desktop tidak berfungsi? dan bagaimana saya bisa membuatnya bekerja? dan apa perbedaan antara kedua file tersebut?

Terima kasih.

pengguna4335407
sumber
Saya membuka keduanya dengan hex editor dan mereka sangat berbeda ketika melihat nilai hex. Cukup mudah untuk membuat yang baru. Buat file teks Autorun dan ketik data, simpan file dan ubah ekstensi dari txt ke inf.
Moab
@ Moab Itulah yang saya lakukan tetapi saya menyimpannya sebagai "UTF-8 dengan BOM UTF-8" - (dxiv) dan itulah masalahnya. Terima kasih atas tanggapannya :)
user4335407
1
Saya tidak setuju dengan mereka karena salinan yang tepat. Ini tidak mungkin JIKA mereka.
Zaibis
File pertama mengatakan "usb". File kedua mengatakan "usbk". Lihatlah baris terakhir. Sepertinya salah ketik sederhana.
ApproachingDarknessFish

Jawaban:

35

2 .inf, yang tidak bekerja, tampaknya telah disimpan sebagai UTF-8 dengan sebuah UTF-8 BOM .

UTF-8 BOM berarti bahwa file dimulai dengan urutan biner EF BB BF(dalam hex). Tetapi Windows mengharapkan autorun.inffile menjadi teks biasa, sehingga tidak akan mengenali yang ini.

Saran saya adalah memilih opsi teks biasa di editor teks Anda saat menyimpan .inffile atau yang serupa.

dxiv
sumber
2
dan inilah mengapa Anda tidak menggunakan notepad untuk mengedit file program.
Thorbjørn Ravn Andersen
4
@ ThorbjørnRavnAndersen saya tidak berpikir notepad menambahkan BOM.
Sharky
1
Tidak, tetapi juga tidak memberi tahu Anda tentang BOM, dan itu akan menyimpannya kembali dalam penyandian yang sama dengan file aslinya.
Nelson
1
UTF8 adalah teks biasa. Saya kira Anda berbicara tentang ASCII.
fNek
2
Ini bahkan bukan pengodean panjang variabel yang menjadi masalah. Itu adalah "BOM" (yang sebenarnya bukan BOM sama sekali, karena BOM hanya digunakan untuk membedakan pengkodean little-endian dari big-endian dari 16-bit atau Unicode yang lebih besar) tidak terlihat di dalam editor. Dan tembusnya "BOM" adalah apa yang membuatnya tidak lagi menjadi teks biasa.
Monty Harder
32

Seperti yang dikatakan dxiv, ini disebabkan oleh UTF-8 BOM.

Editor file yang Anda gunakan, Notepad ++, dapat memberi tahu Anda penyandian file.

masukkan deskripsi gambar di sini

UTF-8 BOM menambahkan byte header ke file yang merusak kompatibilitasnya dengan file ASCII standar, sedangkan file UTF-8 tanpa BOM (atau sekadar UTF-8) sepenuhnya terbalik kompatibel dengan file ASCII standar, dengan asumsi Anda tidak menggunakan UTF apa pun -8 karakter.

Notepad ++ juga memiliki plugin editor HEX dan Anda akan dapat melihat byte tambahan ini dengan itu:

masukkan deskripsi gambar di sini

Nelson
sumber