Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2013, 01:05   #1
Xaker_Two
Пользователь
 
Регистрация: 03.02.2013
Сообщений: 73
Восклицание Delphi: изменение типа переменной со string на PAnsiChar

Доброго времени суток. У меня возникла такая проблема: мне надо считать данные с реестра и закинуть их в процедуру ShellExecute но проблема в том что там разные типы данных(string и PAnsiChar)! И я не знаю как мне их преобразовать. пробовал через буфер(думал он не учтет типа) но не получилось! как быть кто знает подскажите!...

Вот часть кода в которой это происходит:
Код:
procedure TForm1.N3Click(Sender: TObject);
var
  r, r2, e: string;      // "r" надо преобразовать \/
  reg: TRegistry;
  buffer: TClipboard;
  reestr: PAnsiChar; //искомый тип переменной

begin
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
reg.OpenKey('SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\-------------_is1', false);
r:=reg.ReadString('UninstallString');//искомый ключ, его надо преобразовать
r2:=reg.ReadString('DisplayName'); //детектор наличия ключа в реестре
reg.CloseKey;
reg.Free;
e:='---------';
buffer.AsText:=r;               // попытка через буфер обмену
reestr:=buffer.AsText;        //попытка через буфер обмену
if r2=e then ShellExecute(Form1.Handle, 'open', reestr,
nil, nil, SW_SHOWNORMAL) //ошибка:Incompatible type: String and PAnsiChar
else ShowMessage('Данная часть не была установлена!');
end;

Последний раз редактировалось Stilet; 03.02.2013 в 10:50.
Xaker_Two вне форума Ответить с цитированием
Старый 03.02.2013, 01:18   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Может, преобразование типов?

PChar(Str);

или

PAnsiChar(Str);
Вадим Мошев вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод из переменной типа string в byte AnderoN Помощь студентам 2 09.05.2011 13:20
Конвертация String в PAnsiChar в Delphi vandrouny Помощь студентам 5 28.10.2010 22:27
динамическое изменение типа переменной L@m@k Помощь студентам 14 12.08.2010 18:09
к переменной типа integer присвоить переменную string Kigmatig Помощь студентам 7 29.01.2010 21:55
считать данные из переменной типа String 1o1man Помощь студентам 13 17.04.2009 22:34