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

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


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

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

Выпуск № 547
от 30.07.2006, 16:05

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


Вопрос № 50068: Добрый день господа эксперты! Вопрос конечно наверное не в эту рассылку хотя в Делфи я тоже с такой проблемой столкнулся, но сейчас я пишу я на CBuilder 6.0 sp4 и появилась необходимость вести версию проэкта. Как вести ее и как инкрементировать при к...
Вопрос № 50093: ЗдравствуйтеБ господа Эксперты! Помогите, пожалуйста, с такой проблемой: нашел функции для получения инфы о железе, но не могу ими воспользоваться. Мне нужно из каждой получить просто строковые данные. Список функций в приложении. Если можно, покажит...
Вопрос № 50139: Здравствуйте эксперты! Подскажите пожалуйста как можно получить исходный код страницы в Delphi 7. Я пользовался компонентом WebBrowser, но не могу получить от него исходный код страницы в поле Memo. Может нужен другой компонент или С помощью него...
Вопрос № 50144: День добрый. На форме имеется 30 компонент TLabel и называются они все Q1Lab, Q2Lab,..., Q30Lab и все они невидимы. А вопрос такой. Как одним разом сделать их видимыми, в смысле не писать 30 раз if .. else, а например в одном цикле. Ведь имена отлича...

Вопрос № 50.068
Добрый день господа эксперты! Вопрос конечно наверное не в эту рассылку хотя в Делфи я тоже с такой проблемой столкнулся, но сейчас я пишу я на CBuilder 6.0 sp4 и появилась необходимость вести версию проэкта. Как вести ее и как инкрементировать при компиляции мне знакомо и я этим пользуюсь, тут как бы все гуд. А вот как ее программно можно узнать(а если точнее то и версию, билд, и все остальное ) и работать с ней чтобы можно было использовать в Form->Caption, чтобы я мог запустив программу видеть вверху с какой версией программы работаю? А то залазить в свойства файла постоянно как то непроффесионально.

С уважением Александр!
Отправлен: 24.07.2006, 19:14
Вопрос задал: Кныш Александр Александрович (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Coupler
Здравствуйте, Кныш Александр Александрович!
Поскольку рассылка все-таки по delphi, то посмотрите здесь:
http://delphiworld.narod.ru/base/versioninfo.html
http://delphiworld.narod.ru/base/version_info2.html
Ответ отправил: Coupler (статус: Студент)
Ответ отправлен: 24.07.2006, 19:52

Отвечает: Physicist
Здравствуйте, Кныш Александр Александрович!

Единственный (на мой взгляд) выход без того, чтобы залазить в свойства файла - использовать прием, который часто используется в Visual C++: ресурсы перекомпилируются при каждой сборке, а в rc-файлах можно использовать макросы. Поэтому можно создать файл типа version.h, в котором определить версию файла и прочие данные и подключать его как к самой программе, так и к файлу ресурса.

В C++Builder'е все чуть-чуть сложнее, т.к. нужно решить несколько вопросов:
1. Как автоматически увеличивать версию файла при перекомпиляции. В Visual C++ для этих целей есть специальные плагины или макросы. Есть ли что-то аналогичное в C++Builder'е - не знаю.
2. Как запускать BRCC32 при каждой перекомпиляции проекта.
3. Как после сборки проекта запустить RLINK32, чтобы добавить ресурс к программе.

Так что работать со свойствами файла из программы все-таки проще. По-моему, не так уж трудно сразу после Application->Initialize() получить из свойств файла версию файла, занести в глобальную переменную и использовать в дальнейшем везде, где нужно...
Ответ отправил: Physicist (статус: 9-ый класс)
Ответ отправлен: 24.07.2006, 20:18


Вопрос № 50.093
ЗдравствуйтеБ господа Эксперты! Помогите, пожалуйста, с такой проблемой: нашел функции для получения инфы о железе, но не могу ими воспользоваться. Мне нужно из каждой получить просто строковые данные. Список функций в приложении. Если можно, покажите подробно их работу и объясните их аргументы. Заранее спасибо!

Приложение:

Отправлен: 25.07.2006, 04:25
Вопрос задал: Neiroman (статус: 1-ый класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Савенко Вадим Иванович
Здравствуйте, Neiroman!
Вот Вам для примера две процедуры: первая выводит список дисков в ComboBox, а вторая - выводит в RichEdit информацию о диске. Удачи!

Приложение:

Ответ отправил: Савенко Вадим Иванович (статус: 4-ый класс)
Ответ отправлен: 25.07.2006, 06:02

Отвечает: Пёс
Yo, man!
кидай на форму батон и мему.
по событию на клик батона пиши, что написано в приложении
если не хочешь через массивы (array [0..255] of char), тады обьявляй переменные как pansichar, а затем выделяй под них память getmem. например getmem(compname,255);

Приложение:

---------
Пока бежал, он умудрился прописать дырочку в снегу...

Ответ отправил: Пёс (статус: 2-ой класс)
Ответ отправлен: 26.07.2006, 06:01


Вопрос № 50.139
Здравствуйте эксперты!
Подскажите пожалуйста как можно получить исходный код страницы в Delphi 7. Я пользовался компонентом WebBrowser, но не могу получить от него исходный код страницы в поле Memo. Может нужен другой компонент или С помощью него можно получить исходный html-код?
Отправлен: 25.07.2006, 14:20
Вопрос задал: Евгений Дмитриевич (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Dr.Alex
Здравствуйте, Евгений Дмитриевич!
У меня была такая же проблема. И исходный текст страницы я получал через стандартный компонент NMHTTP. У него есть метод Get(Имя_твоей_страницы) и ты получаешь в текстовом виде страницу. Можно истользовать компонент из библиотеки Indy. К сожалению не помню его назавания, но что-то связанное с HTTP.
Ответ отправил: Dr.Alex (статус: 10-ый класс)
Ответ отправлен: 25.07.2006, 14:47

Отвечает: Ерёмин Андрей
Здравствуйте, Евгений Дмитриевич!
Это удобнее сделать с помощью компонента TidHTTP из Indy Components. А делается примерно так:
var Str: String;
HTTP.Host:='www.host.ru';
HTTP.Connect();
Str:=HTTP.Get('http://www.host.ru/page.html');
HTTP.Disconnect;

---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Россия, Тула
WWW: Программирование на DELPHI: Всё для программиста.
ICQ: 286837644
----
Ответ отправлен: 25.07.2006, 15:00

Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Евгений Дмитриевич!
Например, http://delphiworld.narod.ru/base/webbrowser_page_save_to_disk.html (Сам код в приложении)
А вообще тут: http://delphiworld.narod.ru/_all_articles_.html очень много примеров кода по Делфи на тему "как сделать то-то". Просто поиском (Ctrl+F) по странице можно найти.

С Indy я работал - не понравилось. Когда делал автоматический обработчик кода страниц, то на Indy все время какие-то баги именно на этапе загрузки были, а сколько работал с WebBrowser - все нормально. У него один недостаток - он грузит все картинки и флеш, если они у вас не отключены в IE. и трафика больше.

Кстати, если вы хотите обрабатывать код страницы, чтобы работать с элементами HTML, то лучше воспользоваться готовым OLE-объектом с его DOM-структурой, пока страница загружена в WebBrowser.

Приложение:

Ответ отправил: Сухомлин Кирилл Владимирович (статус: Студент)
Ответ отправлен: 25.07.2006, 17:03


Вопрос № 50.144
День добрый. На форме имеется 30 компонент TLabel и называются они все Q1Lab, Q2Lab,..., Q30Lab и все они невидимы. А вопрос такой. Как одним разом сделать их видимыми, в смысле не писать 30 раз if .. else, а например в одном цикле. Ведь имена отличаются только числом после Q. Спасибо заранее.
Отправлен: 25.07.2006, 15:08
Вопрос задал: Попцов Иван (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Ерёмин Андрей
Здравствуйте, Попцов Иван!
Очень легко, с помощью цикла и метода FindComponent(). Код в приложении.

Приложение:

---------
Нет правила без исключений. Правило без исключений - исключение из правил.

Ответ отправил: Ерёмин Андрей (статус: Профессор)
Россия, Тула
WWW: Программирование на DELPHI: Всё для программиста.
ICQ: 286837644
----
Ответ отправлен: 25.07.2006, 15:12
Оценка за ответ: 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
Авторские права | Реклама на портале
Версия системы: 4.35 от 27.07.2006
Яндекс Rambler's Top100

В избранное