Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#10

AW: TFile.Copy Aufruf ergibt Fehlermeldung "Falscher Parmeter"

  Alt 22. Jun 2022, 10:15
Kaspersky taugt ja auch wirklich nicht...mit seinen ganzen false-positives.
Bei Sophos dachte ich immer es wäre eine Firewall , die haben auch Virenscanner?
Auf jedenfall scheint Sophos für System-Administratoren nicht intuitiv bedienbar zu sein,
weil sie in der Regel mehrere Versuche und mehrere Tage für Portfreigaben brauchen.

Ja, es werden teilweise sehr viele Dateien hintereinander kopiert...

Wenn da ein Virenscanner "nicht hinterherkommt und blockiert" taugt der meiner Meinung nach nicht...
Vielleicht lohnt ein Test mit SHFileOperation
Delphi-Quellcode:
uses Shellapi;

//Does not work in debug mode...unless debugger is setup to handle the c000000005 exception
function DoFileWork(aOperation: FILEOP_FLAGS; aFrom, aTo: String;Flags: FILEOP_FLAGS): Integer;
var
  FromPath, ToPath: String;
  SHFileOpStruct: TSHFileOpStruct;
begin
  SetLastError(0);
  ZeroMemory(@SHFileOpStruct,SizeOf(SHFileOpStruct));
  with SHFileOpStruct do
  begin
    wFunc := aOperation;
    pFrom := PAnsiChar(aFrom+ #0#0);
    if aTo <> 'then
    begin
      pTo := PAnsiChar(aTo+ #0#0)
    end else begin // target available
      pTo := nil;
    end; // target not available
    fFlags := Flags;
  end; // structure
  Result := SHFileOperation(SHFileOpStruct);
end;
Delphi-Quellcode:
  if 0 <> DoFileWork(FO_COPY,
             ExcludeTrailingPathDelimiter(SourcePath) ,
             ExcludeTrailingPathDelimiter(DestPath),
             FOF_NOCONFIRMATION or
             FOF_NOCONFIRMMKDIR or
             FOF_RENAMEONCOLLISION)
  then
  Begin
    Error := GetLastError;
    if Error <> 0 then
      ShowMessage('Fehler beim Kopieren nach'+ExcludeTrailingPathDelimiter(DestPath)+' :'+ SysErrorMessage(error) );
  End;
Der Code ist für D2007... also muss evtl für andere Delphis angepasst werden.
SHFileOperation benutzt quasi den windows DateiExplorer und der müsste gut mit dem Virenscanner zusammen arbeiten.
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (22. Jun 2022 um 10:56 Uhr)
  Mit Zitat antworten Zitat