![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите получить папку с которой работает пользователь [D5, Win95/98]
Гранкин Александр © (2002-06-09 16:50:00)Здраствуйте. Нужно получить путь, где в данный момент открыто окно Explorera (Напр: Мой. комп, диск С:, с:/windows). Я думаю нужно сперва получить hwnd explorera а затем достать строчку с адрессом. Помогите реализовать. Заранее благодарен.
Гранкин Александр (2002-06-09 17:16:00) [1]Спасибки. Будем работать
[BAD]Angel (2002-06-09 17:10:00) [2]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Menus, ExtCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Timer1: TTimer;
Button2: TButton;
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
h, hm, h1: THandle;
buf: pchar;
buf1: string;
i: integer;
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
h:=windowfrompoint(POINT(Mouse.CursorPos.x, Mouse.CursorPos.y));
if h=3116 then begin
caption:="true";
ListBox1.Items[0]:=inttostr(GetSystemMenu(getmenu(h),false));
end else caption:="false";
h1:=windowfrompoint(POINT(Mouse.CursorPos.x, Mouse.CursorPos.y));
caption:=inttostr(h);
end;
procedure TForm1.Button2Click(Sender: TObject);
var h, Child, Child1: hWnd;
C: array [0..127] of char;
S: string;
buf: pchar;
begin
h := FindWindow("CabinetWClass", NIL);
Child := GetWindow(h, GW_CHILD);
while Child <> 0 do begin
if GetClassName(Child, C, SizeOf(C)) > 0 then begin
S:=StrPAS(C);
if S="SHELLDLL_DefView" then begin
child1:=getwindow(child, GW_CHILD);
caption:="SysListView32: "+inttostr(Child1);
sendmessage(Child1, WM_SYSKEYDOWN, VK_F3, 0);
end;
end;
Child:=GetWindow(Child, GW_HWNDNEXT);
end;
end;
end.
Ищет хэндл SysListView32 - а как папку определить воспользуйся WinSight (прога такая)
Гранкин Александр (2002-06-09 17:02:00) [3]Можете написать код?
[BAD]Angel (2002-06-09 16:59:00) [4]Хай. Я пробовал... но, дело в том, что у меня получилось взять путь активного окна, в том случае если в настройках експлорера стоит: Отображать путь в строке заголовка или в строке адреса... Тогда можно взять путь, но это не выгодно для юзеров, которые сидят без этого!