Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

преобразование кода Си в Delphi

19K
26 апреля 2009 года
WantToProg
63 / / 19.01.2009
Доброго времени суток уважаемые программисты. В очередной раз хочу вас побеспокоить.
Имеется такой код на Си
 
Код:
unsigned char SendData[] =
            {
                0x1b,'$',
                'H', 'e', 'l', 'l', 'o', ' ',
                'W', 'o', 'r', 'l', 'd',
            };
            MySocketSend(MySocket, SendData, sizeof(SendData));

Работа его заключается в очистке терминала от всех символов и печать на нем текста Hello world.
Все бы ничего, да только надо мне этот код на delphi, а как это сделать, я к сожалению не знаю.
Несколько предположений все таки сделал, но они не работают.
Итак, первое Unsigned Char в Delphi можно представить как Word, ну или Byte. Таким образом получится:
 
Код:
sdbuff: Word;
sdbuff := 0x1b;
Winsock.send(Sock, sdbuff, 256, 0);

Но не понимает Delphi данные в строке sdbuff := 0x1b;, говорит Missing operator or semicolon. То есть не хочет читать данные в шестнадцатиричном представлении.

Я очень прошу подсказать, что я тут не так делаю. Да и вообще, как послать чудо терминалу такую команду?
19K
26 апреля 2009 года
WantToProg
63 / / 19.01.2009
Такс, вопрос решился:
 
Код:
var
sdbuff: String;
begin
sdbuff := #$1b'$Hello World';
Winsock.send(Sock, sdbuff[1], Lenght(sdbuff), 0);
end;


Как теперь вместо текста '$Hello World', подставить переменную?
8.5K
27 апреля 2009 года
FrostFX
121 / / 01.03.2007
Ну если sdbuff типа string то вроде можно просто плюсовать...
Если уж оно совсем запротивится, то можно и так попробовать:
 
Код:
sdbuff := #$1b'$0' + YourVariable;

Ну это еще нужно поэксперементировать.... нужен там $0 или не нужен...
19K
27 апреля 2009 года
WantToProg
63 / / 19.01.2009
Поразительно. Так сразу и в точку. Дело в том, что я уже на другом форуме решил этот вопрос и проблема была именно в невнимательности. Достаточно было добавить '$', и все заработало.
Просто прибор, с которым приходится работать не очень понятен. И мануал по нему скудный. Вот и тыкаюсь куда нипопадя.
Спасибо за ответ, кстати!!!
8.5K
28 апреля 2009 года
FrostFX
121 / / 01.03.2007
За ответ пожалуйста, спасибо что пользуетесь услугами нашЫх авиалиний)
Модеры - ссори за оффтоп, но хотелось бы узнать - что за девайс-то такой со скудными мануалами?
19K
28 апреля 2009 года
WantToProg
63 / / 19.01.2009
Shuttle scantech sg15. Мануал есть, но толи прошивка не соотвествует коммандам описанным в нем, толи я что то не так делаю.
В общем, если придется работать, могу скинуть исходники. Но за этим в приват.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог