Witam
Mam pytanko czy da się zablokować wybieranie ściezki z poziomu użytkownika w Opendialog tzn. żeby nie można było zmienić katalogu który ustawiłem sobie w programie. Znalazłem taki kodzik który to robi będę wdzięczny jeśli ktoś mi go przetłumaczy na bcb 6.0 lub zna prostszy sposób. Oto on :

function EnumODChildren(AHandle: hWnd; AnObject: TObject): BOOL; stdcall;
var
tmpS : string;
theClassName : string;
theWinText : string;
begin
Result := True;
SetLength(theClassName, 256);
GetClassName(AHandle, PChar(theClassName), 255);
SetLength(theWinText, 256);
GetWindowText(AHandle, PChar(theWinText), 255);
tmpS := StrPas(PChar(theClassName));
if Pos('ToolbarWindow32', tmpS) > 0 then
begin
ToolbarHandle := AHandle;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
OpenDialog1.Execute;
end;

procedure TForm1.OpenDialog1Show(Sender: TObject);
const
IDLOOKINLABEL = 1091;
IDDROPDOWN = 1137;
begin
EnumChildWindows(GetParent(OpenDialog1.Handle), @EnumODChildren,
LongInt(0));
if ToolbarHandle > 0 then
ShowWindow(ToolbarHandle, SW_HIDE);
SendMessage(GetParent(OpenDialog1.Handle), CDM_HIDECONTROL, IDDROPDOWN, 0);
SendMessage(GetParent(OpenDialog1.Handle), CDM_HIDECONTROL, IDLOOKINLABEL,
0);
end;

Za pomoc z góry wielkie dzięki