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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.08.2010, 13:19   #1
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию ShortString → PChar

Код:
     ShellExecute(Application.MainForm.Handle,
                  Nil,
                  PChar(DTABLE[Num].Command),
                  PChar(DTABLE[Num].Param),
                  '',
                  SW_SHOWNORMAL);
Command и Param - ShortString.

В Лазаре
Цитата:
UNTMain.pas(229,19) Error: Illegal type conversion: "ShortString" to "^Char"
В Дельфи:
Цитата:
[Error] Unit1.pas(31): Invalid typecast
В String менять нельзя, т.к. эта строка пишется в файл бинарным методом.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 22.08.2010, 13:25   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Код:
ShellExecute(Application.MainForm.Handle,
                  Nil,
                  PChar(DTABLE[Num].Command+''),
                  PChar(DTABLE[Num].Param+''),
                  '',
                  SW_SHOWNORMAL);
уже подобное у тебя было.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 22.08.2010, 13:27   #3
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

В лазаре не пашет.
UPD

Во, как замутил:
Код:
ShellExecute(Application.MainForm.Handle,
                  Nil,
                  PChar(String(DTABLE[Num].Command+'')),
                  PChar(String(DTABLE[Num].Param+'')),
                  '',
                  SW_SHOWNORMAL);
Спасибо за подсказку.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 22.08.2010, 14:06   #4
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

+'' наверное можно убрать? Просто PChar(String(Expr)).
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 22.08.2010, 14:08   #5
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Да, Вы абсолютно правы.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паковка файлов многие → один Alex Cones Общие вопросы Delphi 25 05.08.2010 07:14
DVD MOVIE → MP3 Alex Cones Софт 6 28.11.2009 02:21
[Del] TCanvas.pixels → HBitMap Alex Cones Win Api 11 21.11.2009 19:54
двоичное число→десятичное astrozombie Паскаль, Turbo Pascal, PascalABC.NET 4 06.05.2009 08:32
Access violation на строке вида StrLCopy(PChar(st1),PChar(st2),10); malor Общие вопросы Delphi 1 11.07.2007 13:39