WindowsError: привилегированная инструкция при сохранении изображения FreeImagePy в сценарии, работает в режиме IDLE - PullRequest
1 голос
/ 27 октября 2008

Я работаю над программой для обработки изображений в Python. Я использую FreeImagePy, потому что PIL не поддерживает многостраничные TIFF. Всякий раз, когда я пытаюсь сохранить файл с ним из моей программы, я получаю это сообщение об ошибке (или что-то подобное в зависимости от того, каким способом я пытаюсь сохранить):

Error returned.  TIFF FreeImage_Save: failed to open file C:/OCRtmp/ocr page0
Traceback (most recent call last):
  File "C:\Python25\Projects\OCRPageUnzipper\PageUnzipper.py", line 102, in <mod
ule> OCRBox.convertToPages("C:/OCRtmp/ocr page",FIPY.FIF_TIFF)
  File "C:\Python25\lib\site-packages\FreeImagePy\FreeImagePy\FreeImagePy.py", l
ine 2080, in convertToPages self.Save(FIF, dib, fileNameOut, flags)
  File "C:\Python25\lib\site-packages\FreeImagePy\FreeImagePy\FreeImagePy.py", l
ine 187, in Save return self.__lib.Save(typ, bitmap, fileName, flags)
WindowsError: exception: priviledged instruction

Когда я пытаюсь сделать то же самое из IDLE, он работает нормально.

Ответы [ 2 ]

1 голос
/ 28 октября 2008

Похоже на проблемы с разрешениями, убедитесь, что у вас нет файла, открытого в другом приложении, и что у вас есть права на запись в папку, в которую вы пытаетесь записать.

0 голосов
/ 28 октября 2008

Я тоже так думал, но понял это пару часов назад. Очевидно, что если каталог / файл, в который я пытаюсь записать, не существует, FreeImagePy не достаточно умен, чтобы создать его (большую часть времени. Создание нового многостраничного изображения, кажется, работает нормально), но я предполагаю, что запускать его в IDLE , IDLE выясняет это и заботится об этом или что-то. Мне удалось обойти это с помощью os.mkdir, чтобы явно убедиться, что вещи, которые мне нужны, существуют.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...