Delphi CGI (IIS 7.5, Win 7): система не может найти указанный файл - PullRequest
0 голосов
/ 23 декабря 2010

У меня есть приложение CGI (Delphi 7).В какой-то момент он проходит через этот код:

FileMode := fmOpenRead or fmShareDenyWrite;
AssignFile( user_file, FULL_PATH_TO_USER_INFO_FILE_NAME);
{$I-} Reset( user_file, sizeof( TUserInfoRec));
//
// some IOResult checking here.. 
//
Result := FileSize( user_file) - 1;
CloseFile( user_file);

Приложение отлично работает на Windows XP SP3 с IIS 5.1.В Windows 7 с IIS 7.5 он не может открыть файл.Ошибка появляется в строке сброса - «Система не может найти указанный файл».Однако, если я попытаюсь записать его с помощью TIniFile, это сработает.

ini_file := TIniFile.Create( FULL_PATH_TO_USER_INFO_FILE_NAME);
ini_file.WriteString( 'Section','Ident','Value') ;

Я предполагаю, что это связано с разрешением IIS, но после поиска по верхнему и нижнему уровням у меня нет идей.

Может кто-нибудь помочь мне, пожалуйста?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 24 декабря 2010

Убедитесь, что у пользователя, от имени которого действует IIS, есть разрешения NTFS для этого файла.

0 голосов
/ 23 декабря 2010

Содержит ли USER_INFO_FILE_NAME полный путь к файлу? TIniFile по умолчанию создает его в папке Windows, поэтому ему не нужен полный путь.

...