2 dokładne kopie autorun.inf, jeden działa jeden nie robi [duplikat]

19

Mam dwa pliki Autorun.inf, kod w nich jest dokładnie taki sam. Ale tylko 1 działa, drugi nie działa.

Ten, który działa, jest kopiowany z DVD, a ja go edytowałem. Ten, który nie działa, został utworzony na moim pulpicie przez zmianę nazwy pliku tekstowego (poprawnie zmieniłem jego nazwę).

Ten działa

wprowadź opis zdjęcia tutaj

Ten nie działa

wprowadź opis zdjęcia tutaj

Jeśli chcesz pliki:

Działa jeden: http://www16.zippyshare.com/v/64IutSu4/file.html

Nie działa jeden: http://www98.zippyshare.com/v/zEqU2BZ7/file.html

Czy ktoś wie, dlaczego ten, który utworzyłem na pulpicie, nie działa? i jak mogę to uruchomić? a jaka jest różnica między tymi 2 plikami?

Dzięki.

użytkownik4335407
źródło
Otworzyłem oba za pomocą edytora szesnastkowego i wyglądają one zupełnie inaczej, patrząc na wartości szesnastkowe. Łatwo jest zrobić nowy. Utwórz plik tekstowy Autorun i wpisz dane, zapisz plik i zmień rozszerzenie z txt na inf.
Moab
@Moab Tak właśnie zrobiłem, ale zapisałem go jako „UTF-8 z BOM UTF-8” - (dxiv) i to był problem. Dzięki za odpowiedź :)
user4335407
1
Nie zgadzam się z tym, że mają dokładne kopie. Jest to po prostu niemożliwe, JEŚLI są.
Zaibis
Pierwszy plik mówi „usb”. Drugi plik mówi „usbk”. Spójrz na ostatnie linie. Wygląda na prostą literówkę.
ApproachingDarknessFish

Odpowiedzi:

35

The 2nd .inf, który nie działa, wydaje się być zapisany jako UTF-8 z pomocą UTF-8 BOM .

LM UTF-8 oznacza, że ​​plik zaczyna się od sekwencji binarnej EF BB BF(szesnastkowej). Ale Windows oczekuje, że autorun.infpliki będą zwykłym tekstem, więc nie rozpozna tego jako takiego.

Radzę wybrać opcję zwykłego tekstu w edytorze tekstu podczas zapisywania .infplików lub podobnych.

dxiv
źródło
2
i dlatego nie używasz notatnika do edycji plików programów.
Thorbjørn Ravn Andersen
4
@ ThorbjørnRavnAndersen i nie sądzę, że notatnik dodaje BOM.
Sharky
1
Nie ma, ale też nie mówi o BOM i zapisze go z powrotem w tym samym kodowaniu, co oryginalny plik.
Nelson
1
UTF8 to zwykły tekst. Zakładam, że mówisz o ASCII.
fNek
2
Problemem nie jest nawet kodowanie o zmiennej długości. Chodzi o to, że „BOM” (który tak naprawdę nie jest BOM, ponieważ BOM służy jedynie do odróżnienia kodowania little-endian od kodowania big-endian 16-bitowego lub większego Unicode) nie jest widoczny w edytorze. A niewidoczność „BOM” sprawia, że ​​nie jest on już zwykłym tekstem.
Monty Harder
32

Jak powiedział dxiv, jest to spowodowane przez UTF-8 BOM.

Edytor plików, którego używasz, Notepad ++, może poinformować Cię o kodowaniu pliku.

wprowadź opis zdjęcia tutaj

UTF-8 BOM dodaje bajty nagłówka do pliku, co psuje ich zgodność ze standardowymi plikami ASCII, podczas gdy UTF-8 bez BOM (lub po prostu zwykły UTF-8) jest w pełni kompatybilny ze standardowym plikiem ASCII, zakładając, że nie używasz żadnego UTF -8 znaków.

Notepad ++ ma również wtyczkę edytora HEX i będziesz w stanie zobaczyć te dodatkowe bajty:

wprowadź opis zdjęcia tutaj

Nelson
źródło