Windows 7

Я сгенерировал pdf, используя wkhtmltopdf в C:/Program Files/wkhtmltopdf/bin с помощью команды wkhtmltopdf http://google.co.uk google.pdf чтобы проверить это.

Тем не менее, google.pdf не отображается в проводнике Windows, а при запуске ls -l это показывает, а при запуске dir ... Почему файл будет невидимым таким образом?

редактировать

Запуск cat google.pdf распечатывает PDF в терминал

Я также обнаружил, что могу скопировать файл в другой каталог - точно так же, как при копировании файла в его новый каталог.

Смотря на разрешения от ls -l - никто не имеет разрешения на выполнение для файла PDF.Я не знаю, важно ли это, хотя. Это не важно - другие файлы PDF на моем компьютере имеют такой же набор разрешений.

Результат attrib google.pdf в C:/Program Files/wkhtmltopdf/bin

attrib google.pdf
File not found - google.pdf

Результат ls -l в C:/Program Files/wkhtmltopdf/bin

total 64957
-rw-r--r--  1 Admin  Administ   305109 Jul  1 14:59 bbc.pdf
-rw-r--r--  1 Admin  Administ    30426 Jul  1 15:28 google.pdf
-rwxr-xr-x  1 Admin  Administ   489773 Jun 17 10:54 libgcc_s_sjlj-1.dll
-rwxr-xr-x  1 Admin  Administ  6762827 Jun 17 10:54 libstdc++-6.dll
-rwxr-xr-x  1 Admin  Administ   243109 Jun 17 10:54 libwinpthread-1.dll
-rwxr-xr-x  1 Admin  Administ 41729536 Jun 17 10:54 wkhtmltoimage.exe
-rwxr-xr-x  1 Admin  Administ 41827328 Jun 17 10:53 wkhtmltopdf.exe
-rwxr-xr-x  1 Admin  Administ 41639424 Jun 17 10:52 wkhtmltox.dll

1 ответ1

3

Предполагая, что атрибуты установлены правильно (т. Е. Файл не установлен как «скрытый» или «системный»), это, вероятно, является результатом того, что программа без повышенных прав пытается записать в структуру % ProgramFiles% .

Когда программы без повышенных прав пытаются выполнить запись в эту структуру каталогов, они заканчивают запись в % LocalAppData%\VirtualStore.
Например, если приложение unelevated.exe попытается выполнить запись в C:\Program Files\Unelevated\file.txt, оно фактически выполнит запись в C:\Users\Bob\AppData\Local\VirtualStore\Program Files\Unelevated\file. текст

Другие приложения могут также оказаться в местоположении VirtualStore, в зависимости от того, как они были скомпилированы.

Это может или не может быть исправлено в более поздних версиях MinGW.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .