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

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


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

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

Выпуск № 556
от 08.08.2006, 20:35

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


Вопрос № 50986: Подскажите, пожалуйста, пример кода как найти в другом приложении компонент, например поле Edit и ввести в него текст. Как очистить данные об открытых документах в папке History. Спасибо за ответы....
Вопрос № 51021: Здравствуйте! У меня вопрос по webbrowser.Как сделать так чтобы ссылки открывались в моем браузере а не в ИЕ? После открытия в webBrowser страницы и нажатия там ссылки сразу же открывается IE с ссылкой....
Вопрос № 51023: Здравствуйте эксперты!!! Поскажите пожалуйста, если сможите!! Я пытаюсь установить библиотеку FreeInter.dpk, а Delphi говорит что нет Dsgnintf.dcu!! Подскажите что делать-эта библиотека очень нужна!!!...
Вопрос № 51038: Здравствуйте эксперты!! Подскажите пожалуйста кто занет, какой адрес у SMTP сервера mail.ru?? Может я не правильно выразился, но я думаю вы меня поймёте что я хотел сказать!!??...
Вопрос № 51042: Ещё раз здрасти!! Подскажите пожалйста что не так в программке!! (текст в приложении!) Проблема в том что она вообще ничего не посылает, точнее письмо не приходит а посылает или нет не знаю!!...
Вопрос № 51053: Подскажите пожалуйста как и с помощью чего возможно написать программу, с помощью которой можно было бы посылать писма по электронной почте??...
Вопрос № 51064: Здравствуйте!! Подскажите пожалуйста в чём у меня продлема!!?? Проблема в этой строке: Msg.Recipients.EMailAddresses:='vasya@mail.ru';...

Вопрос № 50.986
Подскажите, пожалуйста, пример кода как найти в другом приложении компонент, например поле Edit и ввести в него текст.
Как очистить данные об открытых документах в папке History.
Спасибо за ответы.
Отправлен: 03.08.2006, 04:54
Вопрос задал: Magellan2005 (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Ерёмин Андрей
Здравствуйте, Magellan2005!
По первому вопросу... Подобные операции нужно выполнять с помощью API-функций FindWindow(), FindWindowEx(), GetWindowText() и SetWindowText(). Однако универсального способа поиска нет - в каждом приложении различная структура окон и поиск нужного поля ввода может занимать от двух до нескольких десятков строк.
По поводу второго вопроса... Это можно сделать так:
Uses ShlObj;
...
SHAddToRecentDocs(SHARD_PATH,nil);

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


Вопрос № 51.021
Здравствуйте!
У меня вопрос по webbrowser.Как сделать так чтобы ссылки открывались в моем браузере а не в ИЕ?
После открытия в webBrowser страницы и нажатия там ссылки сразу же открывается IE с ссылкой.
Отправлен: 03.08.2006, 12:27
Вопрос задал: SA2006 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: sir henry
Здравствуйте, SA2006!
Никак этого не сделать. TWebBrowser - это не самостоятельный компонент, а всего лишь паразит на IE.
Если у Вас установлен какой-то другой браузер по умолчанию, то лучше сделать так:
ShellExecute(0, 'open', 'http://rusfaq.ru', NIL, NIL, SW_SHOW);
не забыв при этом добавить в строку USES модуль ShellAPI. Тогда ссылка будет открываться именно в Вашем браузере по умолчанию.
Ответ отправил: sir henry (статус: Академик)
Россия, Красноярск
----
Ответ отправлен: 03.08.2006, 12:40

Отвечает: Ерёмин Андрей
Здравствуйте, SA2006!
Ничего подобного. Это легко реализуется. TWebBrowser - это действительно "клон" IE, но у него есть соответствующие события, в частности - OnNewWindow2. А вот выдержка из справки:
Cancel allows the event handler to block the creation of a new window. When the event handler sets Cancel to true, the Web browser tries to display the target resource in its current window, starting with an OnBeforeNavigate2 event.
Иными словами, если на странице для ссылки прописано target="_blank", т.е. ссылка должна открыться в новом окне, либо пользователь выбрал пункт "Открыть в новом окне" в контекстном меню ссылки, то вызывается это событие. А подавить его очень легко - просто написать в нём Cancel:=True; - и адрес данной ссылки начнёт открываться в текущем окне, да ещё и событие OnBeforeNavigate2() будет вызвано. Мораль: почаще заглядывать во встроенную справку. Удачи!
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Россия, Тула
WWW: Программирование на DELPHI: Всё для программиста.
ICQ: 286837644
----
Ответ отправлен: 03.08.2006, 14:58


Вопрос № 51.023
Здравствуйте эксперты!!!
Поскажите пожалуйста, если сможите!!
Я пытаюсь установить библиотеку FreeInter.dpk, а Delphi говорит что нет Dsgnintf.dcu!!
Подскажите что делать-эта библиотека очень нужна!!!
Отправлен: 03.08.2006, 12:34
Вопрос задал: F Ruslan R (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Coupler
Здравствуйте, F Ruslan R!
Эта проблема традиционно решается так:
1) Смотрите в секцию uses во всех pas файлах, ищите "Dsgnintf". Если найдете, то удаляйте, и пишите вместо него 2 модуля :DesignIntf и DesignEditors. (естественно, через запятую).
2) При попытке установить пакет Дельфя может жаловаться на отсутствие файла proxies.pas. Но ни в виде скомпилировнного DCU-файла, ни в виде исходного PAS-файла вы его не найдете, так как он поставляется только в виде кода, включенного в файл DesignIde.DCP. Чтобы включить пакет DesignIde.DCP в наш проект, можно в окне редактора щелкнуть правой кнопкой мыши на пункте "Requires" ("Требуются"), в открывшемся меню выбрать "Add...", перейти в каталог $(Delphi)Lib, найти и выбрать файл designide.dcp, после чего закрыть окно нажатием кнопки "Ok". Вы увидите, что выбранный модуль добавился в секцию "Requires" нашего проекта.
После этих плясок с бубном мне удавалось поставить на новую delphi старые компоненты, например, skinengine.
Но если все по-прежнему, то пошлите по вн. почте ваш email, я вам вышлю статью, с помощью которой можно все-таки поставить нужные компоненты.
Ответ отправил: Coupler (статус: Студент)
Ответ отправлен: 03.08.2006, 12:52

Отвечает: Jadd
Здравствуйте, F Ruslan R!
Да все очень просто. В опциях этого пакета (FreeInter.dpk) указываете путь к файлу Dsgnintf.dcu. Он точно есть среди юнитов дельфей. Я не знаю какая версия дельфи у Вас, в семерке этот файл лежит в program filesorlanddelphi 7source oolsapi только зовется он по-другому - DesignIntf.pas.

Успехов.
---------
Если в сердце дверь закрыта, нужно в печень постучаться
Ответ отправил: Jadd (статус: Профессионал)
Адрес: Санкт-Петербург
WWW: http://www.sport-diary.ru
ICQ: 28260749
----
Ответ отправлен: 03.08.2006, 12:52


Вопрос № 51.038
Здравствуйте эксперты!!
Подскажите пожалуйста кто занет, какой адрес у SMTP сервера mail.ru??
Может я не правильно выразился, но я думаю вы меня поймёте что я хотел сказать!!??
Отправлен: 03.08.2006, 14:54
Вопрос задал: F Ruslan R (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Physicist
Здравствуйте, F Ruslan R!

По-моему, smtp.mail.ru. IP-адрес (если Вам нужен он) можно узнать, выполнив в командной строке
ping smtp.mail.ru
Ответ отправил: Physicist (статус: Студент)
Ответ отправлен: 03.08.2006, 15:00

Отвечает: Томша Павел
Здравствуйте, F Ruslan R!
Ip адрес 194.67.23.111. Его можно узнать через "ping ..." в командной строке.
Ответ отправил: Томша Павел (статус: 1-ый класс)
Ответ отправлен: 03.08.2006, 15:01


Вопрос № 51.042
Ещё раз здрасти!!
Подскажите пожалйста что не так в программке!!
(текст в приложении!)
Проблема в том что она вообще ничего не посылает, точнее письмо не приходит а посылает или нет не знаю!!

Приложение:

Отправлен: 03.08.2006, 15:34
Вопрос задал: F Ruslan R (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Physicist
Здравствуйте, F Ruslan R!

Скорее всего, Mail.ru требует указания имени пользователя и пароля для отправки писем. Также попробуй указать другой порт (помнится, где-то рекомендовали попробовать 2525).
Мне не приходилось работать с компонентом FreeInternet, так что не могу подсказать, как это сделать в нем. Смотри документацию по компоненту.
Ответ отправил: Physicist (статус: Студент)
Ответ отправлен: 03.08.2006, 16:45
Оценка за ответ: 5


Вопрос № 51.053
Подскажите пожалуйста как и с помощью чего возможно написать программу, с помощью которой можно было бы посылать писма по электронной почте??
Отправлен: 03.08.2006, 17:52
Вопрос задал: F Ruslan R (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Physicist
Здравствуйте, F Ruslan R!

Хорошая статья - http://delphi-ex.narod.ru/how_to_send_mail.htm
Отправка почты при помощи компонента idSMTP. Все подробно описано.
Ответ отправил: Physicist (статус: Студент)
Ответ отправлен: 03.08.2006, 18:07
Оценка за ответ: 5
Комментарий оценки:
Спасибо за совет!!
А не подскажите, у меня опять проблема в этой строке происходит ошибка!!
Msg.Recipients.EMailAddresses:='vasya@mail.ru';


Вопрос № 51.064
Здравствуйте!!
Подскажите пожалуйста в чём у меня продлема!!??
Проблема в этой строке: Msg.Recipients.EMailAddresses:='vasya@mail.ru';

Приложение:

Отправлен: 03.08.2006, 19:37
Вопрос задал: F Ruslan R (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: din
Здравствуйте, F Ruslan R!
Вы забыли создать сам объект Msg, и соответственно выдается ошибка "Access violation". Добавьте строку Msg:= TIdMessage.Create(self); перед тем как использовать сам объект.
Удачи!
---------
Есть только одно зло - невежество, и только одно благо - знания
Ответ отправил: din (статус: Студент)
Ответ отправлен: 04.08.2006, 09:05
Оценка за ответ: 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

В избранное