Доступ к текстовому файлу из службы

Я пытаюсь написать простую службу в Delphi XE7 на 64-битной виртуальной машине Win7, где установлена ​​Delphi. Все, что мне сейчас нужно, это открыть/создать текстовый файл и писать в него что-то каждую секунду. Это должно быть просто... должно...

Сразу после создания службы и ее установки она работает нормально. Я добавил этот код:

const
  LogName = 'C:\GFLog.txt';

var FLogFile : TextFile;

procedure TServiceTest.ServiceExecute(Sender: TService);

begin
  ServiceThread.ProcessRequests(False);
  try
    AssignFile(FLogFile, LogName);
    if not FileExists(LogName)
      then Append(FlogFile)
      else Rewrite(FlogFile);
    WriteLn(FLogFile,'Start '+TimeToStr(Now));

    while not Terminated do
    begin
      WriteLn(FLogFile,TimeToStr(Now));
      Sleep(1000);
      ServiceThread.ProcessRequests(False);
    end;

    CloseFile(FLogFile);
  except
    on E:Exception do
      ShowMessage(E.Message)
  end;
end;

В итоге файл не создается, ошибок не показывает, не могу понять почему. Я, конечно, что-то не так сделал, но что?

Кто-нибудь может помочь?


person Giorgio Forti    schedule 22.03.2015    source источник
comment
ОТ: Я думаю, пришло время подумать о том, чтобы связаться с серверами учебных пособий Delphi и обновить их содержимое. Доступ к файлам ввода-вывода Pascal, который можно увидеть так много раз, разочаровывает.   -  person TLama    schedule 22.03.2015


Ответы (1)


Хорошо, решено ... ошибка копирования и вставки ... я чувствую себя ОЧЕНЬ глупо, но ...

if not FileExists(LogName)
  then Append(FlogFile)
  else Rewrite(FlogFile);

Я пытался добавить к несуществующему файлу...

person Giorgio Forti    schedule 22.03.2015