AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

FindFirstFileNameW aufrufen

Ein Thema von Benmik · begonnen am 11. Jan 2014 · letzter Beitrag vom 13. Jan 2014
 
Benmik

Registriert seit: 11. Apr 2009
570 Beiträge
 
Delphi 12 Athens
 
#1

FindFirstFileNameW aufrufen

  Alt 11. Jan 2014, 14:43
Für ein geplantes selbst gestricktes Backup-Programm möchte ich gern bei Hardlinks feststellen, welche Dateinamen alle auf den gleichen Speicherbereich ("Datei") zeigen. Nach viel Recherche bin ich darauf gekommen, dass hier FindFirstFileNameW und FindNextFileNameW genau das Richtige sind.
Die Windows-API definiert FindFirstFileNameW(_In_ LPCWSTR lpFileName,_In_ DWORD dwFlags,_Inout_ LPDWORD StringLength,_Inout_ PWCHAR LinkName) und FindNextFileNameW(_In_ HANDLE hFindStream,_Inout_ LPDWORD StringLength,_Inout_ PWCHAR LinkName).
Trotz des Anspruchs, dass Delphi die gesamte Windows-API kapselt, habe ich nichts dergleichen gefunden.
Erstaunlicherweise ergibt die Google-Suchen nach den Funktionen im Zusammenhang mit Delphi NIX, GAR NIX !
Ich müsste also die Funktionen dynamisch aus kernel32 laden.
Hierzu habe ich für GetTickCount64 ein Beispiel gefunden:
Delphi-Quellcode:
function GetTickCount64: Int64;

implementation

uses Windows, SysUtils;

type
   // Don't forget stdcall for API functions.
  TGetTickCount64 = function: Int64; stdcall;

var
  _GetTickCount64: TGetTickCount64;

// Load the Vista function if available, and call it.
// Raise EOSError if the function isn't available.
function GetTickCount64: Int64;
var
  kernel32: HModule;
begin
  if not Assigned(_GetTickCount64) then begin
    // Kernel32 is always loaded already, so use GetModuleHandle
    // instead of LoadLibrary
    kernel32 := GetModuleHandle('kernel32');
    if kernel32 = 0 then
      RaiseLastOSError;
    @_GetTickCount := GetProcAddress(kernel32, 'GetTickCount64');
    if not Assigned(_GetTickCount64) then
      RaiseLastOSError;
  end;
  Result := _GetTickCount64;
end;
Weiß einer von den Delphi-Cracks hier vielleicht, wie die beiden Funktionen aufzurufen wären?
  Mit Zitat antworten Zitat
 

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz