svět, kde se rodí nová budoucnost   
 
Delphi headDelphi Tips

How to save clipboard data to a file


Looking for a way to save the data
in the clipboard to a file in a hurry? All you have to do is call the following  function with the file name :


  SaveClipboardTextDataToFile(
'c:\temp.txt' );
 
Please note that the following code is written to handle only text data in the clipboard. You can easily change this by modifying the clipboard data format specified -- CF_TEXT -- and changing the file handling methods. Don't forget to include Clipbrd unit in your uses section.


function SaveClipboardTextDataToFile(
  sFileTo :
string ) : boolean;
var
 
ps1,
  ps2   : PChar;
  dwLen : DWord;
  tf    : TextFile;
  hData : THandle;
begin
 
Result := False;
 
with Clipboard do
  begin
    try
     
Open;
     
if( HasFormat( CF_TEXT ) ) then
      begin
       
hData := GetClipboardData( CF_TEXT );
        ps1   := GlobalLock( hData );
        dwLen := GlobalSize( hData );
        ps2   := StrAlloc(
1 + dwLen );

        StrLCopy( ps2, ps1, dwLen );
        GlobalUnlock( hData );
       
        AssignFile( tf, sFileTo );
        ReWrite( tf );
        Write( tf, ps2 );
        CloseFile( tf );

        StrDispose( ps2 );
        Result := True;
     
end;
   
finally
     
Close;
   
end;
 
end;
end;

 

Back to Index of Tips

 

 

Send mail to radek.novak@infojet.cz with questions or comments about this web site.
Copyright © 1999-2002 Infojet.cz
Last modified: 26.07.2002