Estou aqui de novo precisando de ajuda...
Estou com o seguinte problema:
Com este código abaixo, Me possibilita arrastar do Explorer e adicionar em um ListBox.
uses
Winapi.ShellApi;
type
TMyform = class(TForm)
...
protected
procedure WMDropFiles(var Message: TWMDropFiles); message WM_DROPFILES;
...
end;
procedure TMyform.WMDropFiles(var Message: TWMDropFiles);
var
numfiles: integer;
buf: array[0..MAX_PATH] of char;
begin
numfiles := DragQueryFile(Message.Drop,$FFFFFFFF,nil,0);
if numfiles>0 then begin
Application.BringToFront;
// only open 1 file at a time
// - you could open more than 1 file
// at a time by looping thru numfiles
DragQueryFile(Message.Drop,0,buf,MAX_PATH);
{ call some method which opens the file
- buf gets automatically
typecast to a string if necessary }
ListBox1.Items.Add(buf);
DragFinish(Message.Drop); // clean up
end;
end;
no formCreatte
DragAcceptFiles(Handle, true);
e no formDestroy
DragAcceptFiles(Handle, false);
o problema se eu executar o aplicar como administrador, não adiciona no listbox, isso só acontece no windows 10 já no windows 7 ultimate funcionar tudo normal.
Será alguém aqui pode da uma ideia do que pode ser ?!
Olá bom dia..
Estou aqui de novo precisando de ajuda...
Estou com o seguinte problema:
Com este código abaixo, Me possibilita arrastar do Explorer e adicionar em um ListBox.
uses Winapi.ShellApi; type TMyform = class(TForm) ... protected procedure WMDropFiles(var Message: TWMDropFiles); message WM_DROPFILES; ... end; procedure TMyform.WMDropFiles(var Message: TWMDropFiles); var numfiles: integer; buf: array[0..MAX_PATH] of char; begin numfiles := DragQueryFile(Message.Drop,$FFFFFFFF,nil,0); if numfiles>0 then begin Application.BringToFront; // only open 1 file at a time // - you could open more than 1 file // at a time by looping thru numfiles DragQueryFile(Message.Drop,0,buf,MAX_PATH); { call some method which opens the file - buf gets automatically typecast to a string if necessary } ListBox1.Items.Add(buf); DragFinish(Message.Drop); // clean up end; end; no formCreatte DragAcceptFiles(Handle, true); e no formDestroy DragAcceptFiles(Handle, false);
o problema se eu executar o aplicar como administrador, não adiciona no listbox, isso só acontece no windows 10 já no windows 7 ultimate funcionar tudo normal.
Será alguém aqui pode da uma ideia do que pode ser ?!
Obrigado pela atenção...
Compartilhar este post
Link para o post
Compartilhar em outros sites