Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 349
от 08.01.2006, 23:12

Администратор:Калашников О.А.
В рассылке:Подписчиков: 231, Экспертов: 47
В номере:Вопросов: 5, Ответов: 10


Вопрос № 32562: 1.Как в Делфиях проверить в программе на наличие в системе запущенного отладчика (например SoftIce)?? 2. как можно дописать к исполняемому файлу (exe) свой код 3. Или в процессе выполнения моей программы изменить ее соббсвенный код (так скз...
Вопрос № 32565: С наступившим Вас ! у меня такой вопрос-просьба: как сделать выборку с помощью запроса SQL я вроде разобрался, НО вот как отобразить результат/результаты не на DBGrid, а например в Label1 ( Label2?...Label6 - если результатов несколько ?) Если мо...
Вопрос № 32585: Люди добрые, посоветуйте книгу по Delphi для самых-самых новичков....
Вопрос № 32587: Всех поздравляю с прошедшим НГ ! У меня возник вот какой вопрос. Необходимо в Edit вводить только числовые значения ((типа float) 123.56) причем длина может быть разной (от 0.01 до 9999999.99), но когда вводишь число (допустим необходимо...
Вопрос № 32603: Как программно изменить приоритет выполнения моего приложения во время его работы на любой другой? Или, например, просто повысить/понизить приоритет?.....

Вопрос № 32.562
1.Как в Делфиях проверить в программе на наличие в системе запущенного отладчика (например SoftIce)??
2. как можно дописать к исполняемому файлу (exe) свой код
3. Или в процессе выполнения моей программы изменить ее соббсвенный код (так скзать самомодифицирующийся код)!!
Отправлен: 03.01.2006, 08:29
Вопрос задал: Hdd (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Denisss
Здравствуйте, Hdd!

1. Открываете исходники проекта и прописываете то, что приведено в примере (см. приложение)
2. Изучайте структуру PE файлов. Просто так, в одном ответе про нее сложно будет рассказать (да и сам я ее не очень-то хорошо знаю)
3. Это невозможно, т.к. запущенный исполняемый файл изменять невозможно. Возможно сделать так:
Запустить другую программу и уже она будет изменять Вашу.

Приложение:

Ответ отправил: Denisss (статус: Специалист)
Отправлен: 03.01.2006, 16:57
Оценка за ответ: 5


Вопрос № 32.565
С наступившим Вас !
у меня такой вопрос-просьба: как сделать выборку с помощью запроса SQL я вроде разобрался, НО вот как отобразить результат/результаты не на DBGrid, а например в Label1 ( Label2?...Label6 - если результатов несколько ?) Если можно то с небольшим примером, т.к. с примером проще разобратся... Доступ осуществляется через ADOQueru.Заранее спасибо !
Отправлен: 03.01.2006, 10:33
Вопрос задал: Alekslep (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Маренич Владимир
Здравствуйте, Alekslep!
Если Вы имеете ввиду результат из нескольких полей, то пример такой:
ADOQuery1.SQL.Text:='SELECT * FROM MyTable';
ADOQuery1.Open;
Label1.Caption:=ADOQuery1.FieldByName('Field1').AsString;
Label2.Caption:=ADOQuery1.FieldByName('Field2').AsString;
...
Label6.Caption:=ADOQuery1.FieldByName('Field6').AsString;

А если наоборот - несколько строк из одного поля, то нужно иметь гарантию, что будет определенное кол-во строк, хотя можно учесть это условии выхода из цикла:
ADOQuery1.SQL.Text:='SELECT Field1, SUM(Field2) as SUMMA FROM MyTable GROUP BY Field1';
ADOQuery1.Open;
i:=1;
while not ADOQuery1.Eof and (FindComponent('Label'+IntToStr(i))<>nil) do
begin
(FindComponent('Label'+IntToStr(i)) as TLabel).Caption:=ADOQuery1.FieldByName('SUMMA').AsString;
inc(i);
ADOQuery1.Next;
end;
Ответ отправил: Маренич Владимир (статус: 9-ый класс)
Отправлен: 03.01.2006, 12:25


Вопрос № 32.585
Люди добрые, посоветуйте книгу по Delphi для самых-самых новичков.
Отправлен: 03.01.2006, 17:40
Вопрос задал: psevdo (статус: 1-ый класс)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Архангельский Андрей Германович
Здравствуйте, psevdo!

Cтив Тейксейра, Ксавье Пачеко
"Delphi 5, Руководство разработчика. Том 1. Основные методы и технологии",
М., Издательский дом "Вильямс", 2000г
"Delphi 5, Developer's Guide" by Xavier Pacheco and Steve Teixteira,
(c)2000 SAMS Inc.
Одна из лучших книг по Delphi 5. Эта книга предназначена для опытных и профессиональных разработчиков программного обеспечения в среде Delphi и написана двумя признанными экспертами в этой области, принимавшими непосредственное участие в создании данного продукта. В текст книги включен исходный код множества прекрасных примером работоспособных приложений по всем обсуждаемым темам. Каждый пример подробно комментируется, что делает данную книгу отличным учебником, позволяющим быстро освоить создание эффективных приложений. Свойственный авторам великолепный стиль изложения материала неоднократно отмечался наградами за лучшую книгу по Delphi.
В первом томе материал охватывает практически все, что связано с разработкой локальнных приложений, начиная с основ программирования в Delphi и заканчивая созданием многопоточных приложений, включая вопросы отладки и тестирования.

Полезна еще и тем, что в ней есть начальные сведения по Паскалю
Ответ отправил: Архангельский Андрей Германович (статус: Студент)
Отправлен: 03.01.2006, 17:47

Отвечает: Ujin Antikvar
Здравствуйте, psevdo!

Вот несколько хороших книг для новичков

1, Библия делфи М.Флеонова
2, М. В. Сухарев Основы Delphi.

Есть еще много других но эти на мой взгляд лучшие.

Если хотите могу их вам дать в электронном формате
---------
"Будущее принадлежит тем, кто верен своей мечте" - Элеонора Рузвельт
Ответ отправил: Ujin Antikvar (статус: 5-ый класс)
Отправлен: 03.01.2006, 17:49

Отвечает: Slava
Здравствуйте, psevdo!
"Delphi 7. Учебный курс" Бобровский С.И. Издательский дом "Питер" 2005 г.
В книге рассмотрены возможности Delphi 7, рассмотрены визуальные компоненты системы и методы их создания. Книга может быть использована как пособие для изучающих основы программирования и сетевые технологии, а также как справочник по компонентам.
Ответ отправил: Slava (статус: 4-ый класс)
Отправлен: 03.01.2006, 20:25

Отвечает: Сергей Т.
Здравствуйте, psevdo!
"Библия Delphi", автор Фленов Михаил (другие его книги я не рекомендую покупать)
Ответ отправил: Сергей Т. (статус: 1-ый класс)
Отправлен: 03.01.2006, 20:36

Отвечает: Schmak
Здравствуйте, psevdo!
Сам начинал изучение с книги В.В. Фаронова "Delphi. Программирование на языке высокого уровня" Питер 2003. В книге даны описания основных классов и компонентов Delphi с примерами.
---------
Не всё то Windows, что висит!
Ответ отправил: Schmak (статус: Практикант)
Отправлен: 05.01.2006, 17:48


Вопрос № 32.587
Всех поздравляю с прошедшим НГ !
У меня возник вот какой вопрос.

Необходимо в Edit вводить только числовые значения ((типа float) 123.56) причем длина может быть разной (от 0.01 до 9999999.99), но когда вводишь число (допустим необходимо ввести 1234.56) допустим 1 в поле показывается 1<курсор>.00, далее 2 - 12<курсор>.00, далее 3 - 123<курсор>.00, далее 4 - 1234<курсор>.00, потом . - 1234.<курсор> 00, далее 5 - 1234.5<курсор>0 и 6 - 1234.56<курсор>.
Вот.
Благодарю если кто-нибудь поможет мне.
Отправлен: 03.01.2006, 18:25
Вопрос задал: Afini (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Ерёмин Андрей
Здравствуйте, Afini!
Вот, нашёл в одной из документаций:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

var                                          //цифровая маска

vrPos,vrLength,vrSelStart : byte;

const

I : byte=1; //I+1 = количество знаков после запятой (в данном случае - 2 знака)

begin

With Sender as TEdit do

begin

vrLength:=Length(Text); //определяем длину текста

vrPos:=Pos(',', Text); //проверяем наличие запятой

vrSelStart:=SelStart; //определяем положение курсора

end;



Case Key of

'0'..'9' : begin

//проверяем положение курсора и количество знаков после запятой

If (vrPos>0)and(vrLength-vrPos>I)and(vrSelStart>=vrPos)

then Key:=#0; //"погасить" клавишу

end;

',','.' : begin

//если запятая уже есть или запятую пытаются поставить перед числом или никаких цифр в поле ввода еще нет

If (vrPos>0)or(vrSelStart=0)or(vrLength=0)

then Key:=#0 //"погасить" клавишу

else Key:=#44; //всегда заменять точку на запятую

end;

#8 : ; //позволить удаление знаков клавишей 'Back Space'

else Key := #0; //"погасить" все остальные клавиши

end;



end;
---------
Работа - не волк, а произведение силы на расстояние!
Ответ отправил: Ерёмин Андрей (статус: Профессионал)
Отправлен: 03.01.2006, 19:17


Вопрос № 32.603
Как программно изменить приоритет выполнения моего приложения во время его работы на любой другой? Или, например, просто повысить/понизить приоритет?..
Отправлен: 03.01.2006, 23:01
Вопрос задал: MiXei4 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Minor
Здравствуйте, MiXei4!
Насколько я понял, вам необходимо установить не только приоритет процесса, но и приоритет его потока, если нет, просто вычеркните ненужные строчки, они помечены '//*' Удачи ;)

Приложение:

Ответ отправил: Minor (статус: 1-ый класс)
Отправлен: 03.01.2006, 23:46
Оценка за ответ: 5
Комментарий оценки:
Спасибо.. Всё работает.. Хотелось бы ещё узнать как просто повысить приоритет, не зная текущего. Например, из низкого сделать нормальный, из нормального сделать высокий... и то же самое для понижения.. Или хотя бы как узнать текущий приоритет..

Отвечает: Diman_A
Здравствуйте, MiXei4!
В приложении приведен код, который изменяет приоритет приложения.
IDLE_PRIORITY_CLASS - низкий,
NORMAL_PRIORITY_CLASS - средний,
HIGH_PRIORITY_CLASS - высокий,
REALTIME_PRIORITY_CLASS - реального времени.

Приложение:

Ответ отправил: Diman_A (статус: 2-ой класс)
Отправлен: 04.01.2006, 07:06
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Яндекс Rambler's Top100

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Архив рассылки
Отписаться Вебом Почтой
Вспомнить пароль

В избранное