Помощь - Поиск - Пользователи - Календарь
Полная версия: Проблема с кавычками
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Paylik
Товарищи!!!!
У меня проблема. мне нужно чтобы пользователь выбрал деректорию
и далее в прогрмме нажатием клавиши SpeedButton открывалась эта деректория.

Код "деректории":
Var
h:String; 
procedure TForm3.BitBtn1Click(Sender: TObject);
var
  Root: string;     
  pwRoot : PWideChar;
  Dir: string;
begin
  Root := ''; //  корневой
  GetMem(pwRoot, (Length(Root)+1) * 2);
  pwRoot := StringToWideChar(Root,pwRoot,MAX_PATH*2);
  if not SelectDirectory('Выберите папку', pwRoot, Dir)
     then Dir :=''
     else Dir := Dir+'\';
 H:=dir;
 end;


Код SpeddButton:

procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
 ShellExecute(Handle, nil, 'H', nil, nil, SW_MAXIMIZE);
end;


Ошибка, наверно, в том, что по умолчанию в H уже есть кавычки, но процедура ShellExecute
требует чтобы я поставил ещё одни. Как быть?

М
Пользуемся тегом code!

arhimag
Попробуй :
ShellExecute(Handle, nil, 'H:\', nil, nil, SW_MAXIMIZE);
volvo
Не совсем... Надо просто преобразовать String в PChar:

  ShellExecute(Handle, nil, pchar(H), nil, nil, SW_MAXIMIZE);

arhimag
Ай, черт, пардон.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.