Форум: "Потрепаться";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
ВнизСоставление нового FAQ для этого сайта Найти похожие ветки
← →
Gero © (2004-11-06 23:53) [80]
> kaZaNoVa © (06.11.04 23:50)
Отвечать вопросом на вопрос дурной тон, я уже сказал и хотел сказать лишь это.
Все, не засоряй ветку и не провоцируй остальных.
← →
kaZaNoVa © (2004-11-06 23:54) [81]Gero © (06.11.04 23:53) [80]
ок .. ухожу из этой ветки ..
← →
Gero © (2004-11-06 23:56) [82]
> Piter © (06.11.04 19:36)
Чем тебе не понравился мой вариант ответа на вопросы про Firewall и пр.?
← →
Игорь Шевченко © (2004-11-06 23:56) [83]kaZaNoVa © (06.11.04 23:41) [74]
Совершенно разумные слова :) Но обычно чувство собственного превосходства достигается результатом самостоятельного поиска решения, а не готовым ответом из форума, не так ли ? :)
← →
wisekaa © (2004-11-07 00:11) [84]>> Как самому написать Sniffer
>> Как самому написать Proxy
>> Как самому написать FireWall
Может просто перчислить области знаний, которые нужно приобрести, что-бы создать подобные вещт
← →
Piter © (2004-11-07 02:06) [85]YurikGL © (06.11.04 23:33) [73]
Есть предприятие, где нужно удаленное управление. В нем работают в том числе программисты. А начальству и системному администратору нужно ими иногда управлять. А программистам иногда нужно снимать сервисы
все это решается ГРАМОТНОЙ раздачей прав
Gero © (06.11.04 23:44) [76]
"а зачем" - лишнее.
Дурной тон, однако
учту
Gero © (06.11.04 23:56) [82]
Чем тебе не понравился мой вариант ответа на вопросы про Firewall и пр.?
ну это аналогично "пошел ты на ..." только вежливо. Все таки хорошо бы хотя бы ссылки на соответствующую документацию. Просто есть такой момент, скажешь человек "у тебя не получится" - он только обидется. А вот покажешь ему что нужно делать, чтобы написать хоть простейший функционал - он сам поймет, что не готов еще.
← →
Gero © (2004-11-07 08:56) [86]
> Piter © (07.11.04 02:06)
В [35] ты дал вопросы только по сетям и базам.
А по VCL, COM, графике и пр. вопросов нет?
← →
Anatoly Podgoretsky © (2004-11-07 09:13) [87]Piter © (07.11.04 02:06) [85]
Просто есть такой момент, скажешь человек "у тебя не получится" - он только обидется.
А ты так не говори, а скажи, что данные вопросы не для FAQ и требуют сильной подготовки. В FAQ заносятся часто задаваемые вопрос и что важно, полученные на них ответы, по русски ЧАВО
А то что ты делаешь называется не ЧАВО, а Tips and Tricks - трюки и советы, то есть сборник советов, но никак не ЧАВО.
← →
Гарри Поттер © (2004-11-07 12:07) [88]К FAQ больше относятся вопросы: "Поскажите бесплатный хостинг со всеми наворотами", "Почему не работает кладовка?" и т.п.
← →
Piter © (2004-11-07 12:14) [89]Anatoly Podgoretsky © (07.11.04 9:13) [87]
А то что ты делаешь называется не ЧАВО, а Tips and Tricks - трюки и советы, то есть сборник советов, но никак не ЧАВО.
ну пусть будет так. Имхо, намного полезей. А как называть - дело десятое
Gero © (07.11.04 8:56) [86]
В [35] ты дал вопросы только по сетям и базам.
А по VCL, COM, графике и пр. вопросов нет?
Блин, ты думаешь я сам вопросы придумываю? Я беру вопросы из той ветки.
Кстати, на текущие вопросы ответов пока никто и не дал. Вот так то. А нафлудили уже на три страницы...
Итак, список вопросов на которые было бы неплохо получить ответы:
Как эмулировать нажатие клавиши
Как перенести/установить/настроить алиасы BDE на другой компьютер
Как нормализовать вид ScrollBar (90% ответ - Fetchall :))
Вопрос про точное хранение денежных сумм и т.п.
Как в выпадающий список DBComboBox вывести все значения поля из таблицы?
Как вставить TCheckBox в поле DBGrid ?
Как раскрасить отдельные строки в TDBGgrid
Где взять proxies.pas
← →
kaZaNoVa © (2004-11-07 12:27) [90]Piter © (07.11.04 12:14) [89]
О Proxies.dcu (Proxies.pas) один раз и на всегда...
Выдержка из ru.delphi.faq, к которой нечего больше добавить:
"Просто реорганизуйте ваш проект на использование runtime пакетов и добавьте "DesignIDE" к вашему списку runtime пакетов. Proxies находится здесь, и вам не нужен исходный текст вообще."
Почему это сделано? Просто для уверенности, что вы не сможете распространять design time части (property editors, component editors), это запрещено по лицензии. DesignIDE.bpl не является свободно распространяемым, вы имеете право использовать его только на машине на которой установлена Delphi, подобно Component libraries.
http://blog.gregor.ru/2004/10/13/1/index.html
← →
kaZaNoVa © (2004-11-07 12:47) [91]Удалено модератором
Примечание: Не надо ссылок на этот сайт
← →
Piter © (2004-11-07 21:05) [92]Не понимаю, откуда у меня такая страсть к большим текстам... ужас какой-то. Вот в общем, написал про RAS - разбирался блин целый день, область совсем не знакомая была. Прошу проконтролировать уважаемую общественность. А также прошу эту самую общественность активнее помогать отвечать на другие вопросы :)
Итак, вот что получилось
Вопрос: как установить - разорвать соединение DialUp
Ответ: нужно воспользоваться функциями RAS - Remote Access Service. Но проблема в том, что хотя в WIN32SDK.HLP есть описание функций из этого набора в главе "Remote Access Service Functions", но файлов импорта в поставке Delphi нету. Поэтому вы можете вручную экспортировать нужные функции из "rasapi32.dll" пользуясь справкой Delphi и MSDN, но гораздо эффективнее и умнее будет взять переведенные файлы импорта с проекта http://www.delphi-jedi.org/, в данное время точный URL для загрузки файлов импорта RAS - ftp://delphi-jedi.org/api/RAS.zip
В набор входит несколько юнитов: Ras.pas, RasAuth.pas, RasDlg.pas, RasError.pas, RasSapi.pas, RasShost.pas, и дополнительные юниты: RasUtils.pas, RasHelperClasses.pas, а также файлы из папки DEMOS с нужными константами: Lmcons.pas, LmErr.pas.
Можно эти юниты переписать по какому-нибудь пути, известному Delphi, например записать все перечисленные файлы в каталог {Каталог_Delphi}/lib и дальше просто подключать к любым программам эти модули, например:uses
..., Ras, RasUtils, RasHelperClasses;
В RasHelperClasses.pas реализованы очень полезные классы, например TRasDialer, TRasPhonebook, TRasConnectionsList, с применением которых и построен демонстрационный пример RasDemo.dpr.TRasDialer
- инкапсулирует в себе соединение, после настройки можно устанавливать, разъединять соединение, следить за процессом установления соединенияTRasPhonebook
- служит для управление существующими соединениями, позволяет создавать новые, удалять существующие соединения, переименовывать, настраивать параметры соединенийTRasConnectionsList
- служит для управления текущими установленными соединениями.
У меня только одно замечание по исходному коду RasDemo.dpr. Там в обработчике событияTMainForm.PBDialBtnClick
идет настройкаTRasDialer
по записи изTRasPhonebook
методомRasDialer.Assign(RasPhonebook[Selected.Index]);
Но реализация метода Assign такова, что имени соединения присваивается пустая строка:procedure TRasDialer.Assign(Source: TPersistent);
...
FParams.szEntryName := "";
...
С точки зрения RAS установка соединения с такими параметрами будет идти как независимое соединение. То есть, фактически от выбранного соединения копируются номер дозвона, номер обратного вызова, имя пользователя, пароль и домен. И устанавливается новое соединение с такими параметрами, которое к выбранному соединению никакого отношения не имеет. Но у выбранного соединения могут быть установлены необходимые для дозвона свойства, типа "Сценарий" или "Ручной набор номера".
Поэтому чтобы перенять и эти параметры, надо присвоить устанавливаемому соединению имя, аналогичное имени нужного существующего соединения. Например, переделать пример RasDemo.dpr таким образом:procedure TMainForm.PBDialBtnClick(Sender: TObject);
var
NewDialParam: TRasDialParams;
begin
with PhonebookListView do
if (Selected <> nil) then
begin
RasDialer.Assign(RasPhonebook[Selected.Index]);
NewDialParam := RasDialer.Params ;
StrPCopy(NewDialParam.szEntryName, RasPhonebook[Selected.Index].Name);
RasDialer.Params := NewDialParam ;
UserNameEdit.Text := RasDialer.UserName;
PasswordEdit.Text := RasDialer.Password;
PhoneNumberEdit.Text := RasDialer.PhoneNumber;
PageControl1.ActivePage := TabSheet3;
end;
end;
И в конце хочу сделать пару замечаний:
1) скорее всего, в NT системах вы не узнаете пароля от соединения. В поле пароля будут просто зведочки. Чтобы установить соединение с паролем по умолчанию (если он сохраняется) нужно оставить пароль пустым
2) если вы хотите набрать номер в импульсном наборе, а у вас набирается в тоновом - то нужно просто поставить символ "p" (от слова "pulse") перед номером, например "p1055555". Символ "w" обозначает ожидание гудка в линии, например, при наборе через АТС "9w1055555".
Отвечал: Piter
← →
P.N.P. © (2004-11-07 23:25) [93]Как отправить письмо с вложением
вот, выдрал из своего проекта - кто автор не знаю к сожалению
uses MAPI
..
function SendMail(const From, Dest, Subject, Text, FileName: PChar;
Outlook: boolean):Integer;
var
Message: TMapiMessage;
Recipient, Sender: TMapiRecipDesc;
File_Attachment: TMapiFileDesc;
function MakeMessage: TMapiMessage;
begin
FillChar(Sender, SizeOf(Sender), 0);
Sender.ulRecipClass := MAPI_ORIG;
Sender.lpszAddress := From;
FillChar(Recipient, SizeOf(Recipient), 0);
Recipient.ulRecipClass := MAPI_TO;
Recipient.lpszAddress := Dest;
FillChar(File_Attachment, SizeOf(File_Attachment), 0);
File_Attachment.nPosition := Cardinal(-1);
File_Attachment.lpszPathName := FileName;
FillChar(Result, SizeOf(Result), 0);
with Message do begin
lpszSubject := Subject;
lpszNoteText := Text;
lpOriginator := @Sender;
nRecipCount := 1;
lpRecips := @Recipient;
nFileCount := 1;
lpFiles := @File_Attachment;
end;
end;
var
SM: TFNMapiSendMail;
MAPIModule: HModule;
MAPI_FLAG: Cardinal;
begin
if Outlook then
MAPI_FLAG:=MAPI_DIALOG
else
MAPI_FLAG:=0;
MAPIModule := LoadLibrary(PChar(MAPIDLL));
if MAPIModule = 0 then
Result := -1
else
try
@SM := GetProcAddress(MAPIModule, "MAPISendMail");
if @SM <> nil then begin
MakeMessage;
Result := SM(0, Application.Handle, Message, MAPI_FLAG, 0);
end else Result := 1;
finally
FreeLibrary(MAPIModule);
end;
end;
← →
P.N.P. © (2004-11-07 23:31) [94]Забыл пример использования :)
SendMail("from_mail@server.com","to_mail@server.com","Subject","Body","c:\MyFile.txt",true);
← →
Piter © (2004-11-08 12:18) [95]P.N.P. © (07.11.04 23:25) [93]
спасибо
← →
Piter © (2004-11-09 18:45) [96]Ответы, кстати, до сих пор принимаются...
← →
Gero © (2004-11-09 19:02) [97]
> Piter © (09.11.04 18:45)
Обязательно писать свое или можно взять чужое с копирайтом?
← →
Piter © (2004-11-09 19:57) [98]Я даже не знаю. Смотря откуда копирайт :)
← →
Piter © (2004-11-09 19:58) [99]Ну ты приведи ответ - а я подумаю
← →
jack128 © (2004-11-09 20:47) [100]Piter © (07.11.04 21:05) [92]
я не думаю, что использование сторонних классов в FAQ - это есть good. Только хедер апи функций, но не классы. ИМХО, конечно ;-)
Piter © (07.11.04 12:14) [89]
Как раскрасить отдельные строки в TDBGgridDBGrid1.DefaultDrawing := False;
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
Grid: TDbGrid;
begin
Grid := Sender as TDBGrid;
if (Grid.DataSource.DataSet.RecNo mod 2) = 0 then
Grid.Canvas.Brush.Color := clRed;
Grid.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
← →
Piter © (2004-11-09 22:54) [101]jack128 © (09.11.04 20:47) [100]
я не думаю, что использование сторонних классов в FAQ - это есть good. Только хедер апи функций
ну в чем то я с тобой согласен, но... Ты видел те классы? Они ОЧЕНЬ логичные и правильные, мне по крайней мере жутко понравились, все написано очень понятно и достойно (правда, данной проблеме я посвятил день, что много для меня, но мало, чтобы кардинально разобраться в этом вопросе) - так что не так уж и страшно. Там все очень прозрачно.
jack128 © (09.11.04 20:47) [100]
спасибо, что на вопросы отвечаешь. Вот если ты еще дополнишь эмуляцию курсора мыши примером эмуляции клавиш - то совсем спасибо, тогда бы я оформил соответствующий вопрос FAQ за тобой :)
← →
Piter © (2004-11-10 00:35) [102]jack128 © (09.11.04 20:47) [100]
DBGrid1.DefaultDrawing := False;
а зачем? У меня и при True все нормально раскрашивается...
P.N.P. © (07.11.04 23:25) [93]
у меня этот код не работает
← →
P.N.P. © (2004-11-10 00:56) [103]Piter © (10.11.04 00:35) [102]
Этот код будет работать при почтовой программе по умолчанию - Outlook express
← →
jack128 © (2004-11-10 01:04) [104]Piter © (10.11.04 0:35) [102]
У меня и при True все нормально раскрашивается...
Ага - два раза подряд ;-) Один раз - рисует сам грид, а потом вызывается OnDrawColumnCell, в котором закраска по новой делается..
← →
jack128 © (2004-11-10 01:13) [105]Piter © (09.11.04 22:54) [101]
примером эмуляции клавиш
В общем то даже проще, чем с мышой..procedure PressKey(Key: byte); //Key - virtual-key code
begin
keybd_event(Key, 0, 0, 0);
keybd_event(Key, 0, KEYEVENTF_KEYUP, 0);
end;
← →
Piter © (2004-11-10 19:05) [106]P.N.P. © (10.11.04 0:56) [103]
Этот код будет работать при почтовой программе по умолчанию - Outlook express
нифига подобного. Не при мыше, не при аутлуке не работает...
← →
kaZaNoVa © (2004-11-12 20:03) [107]Удалено модератором
Примечание: На хакерские сайты
← →
Piter © (2004-11-15 21:13) [108]Есть пример от Rouse как определить MAC адрес по IP. Теперь интересует вопрос:
как определить IP адрес по MAC адресу?
Плюс интересно как определить MAC адрес локального компьютера
← →
kaZaNoVa © (2004-11-15 21:28) [109]Piter © (15.11.04 21:13) [108]
а когда примерно будет готов FAQ и где он будет доступен ?
← →
Игорь Шевченко © (2004-11-15 21:41) [110]
> и где он будет доступен ?
Наверху есть ссылочки - Новости, Поиск, FAQ... Вот там и будет :)
← →
Piter © (2004-11-15 23:22) [111]kaZaNoVa © (15.11.04 21:28) [109]
а когда примерно будет готов FAQ и где он будет доступен ?
я не понимаю определения "готов FAQ". Это такая вещь, которая не может быть готова, она по определению постоянно дополняема. Я пока обработал 24 вопроса.
Но мне уже смешно - я не могу разместить FAQ на этом сайте. Мне самому приходится долбиться в аськи, на мыло McSimm"у, Panov"у чтобы хоть узнать как оно там. Меня перекидывают от одного к другому, на письма не отвечают, в аське в инвизибле сидят.
У меня полное ощущение, что я пытаюсь долг в $1000 с них взять, вот они и скрываются. Я вроде как хочу сделать FAQ, а вместо поддержки встречаю такую инерцию, что ужас. Не может у сайта быть будущего при таком раскладе и такой нехватки времени.
← →
Piter © (2004-11-15 23:23) [112]Игорь Шевченко © (15.11.04 21:41) [110]
Наверху есть ссылочки - Новости, Поиск, FAQ
у кого есть - а у кого и нету :)
← →
miwa © (2004-11-15 23:37) [113]
> у кого есть - а у кого и нету :)
Э, это уже... блин, как же это по-русски... неочевидная реклама... нет, не то... "прихована реклама", короче :о))
← →
jack128 © (2004-11-15 23:53) [114]miwa © (15.11.04 23:37) [113]
блин, как же это по-русски... неочевидная реклама...
"Скрытая" реклама?? Ну этот "тонкий" намек толшиной с приличное бревно врядли так можно назвать. ;-)
Думаю Питер может не только в программисты, но в рекламщики теперь пойти :-))
← →
miwa © (2004-11-15 23:59) [115]
> "Скрытая" реклама??
Точно, спасибо. Теперь засну спокойно :о))
> Думаю Питер может не только в программисты, но в рекламщики
> теперь пойти :-))
Незаменимый человек, короче. А еще пережывает, что работу найти не может. Да брось ты, Миша - тебя в любой рекламный отдел с руками оторвут ;о))
← →
Anatoly Podgoretsky © (2004-11-16 00:36) [116]Piter © (15.11.04 23:22) [111]
У меня полное ощущение, что я пытаюсь долг в $1000 с них взять,
А пытался?
Не может у сайта быть будущего при таком раскладе и такой нехватки времени.
Нельзя жить в обществе без цветовой дифернциации штанов.
← →
hjhjhj (2004-11-16 01:49) [117]Мне кажется, что традиционно факи привязаны
к какой-нибудь отдельно взятой конференции.
В эпоху USENET"а модераторы конференций периодически выпускали
факи, чтобы каждый мог быстро найти ответ,
не подписываясь на данную конференцию (это экономило и траффик,
и время людей, которые там тусовались),
и чтобы он быстро мог получить представление
о предмете конфы и об ее уровне.
Они (факи) так и назывались - "фак конференции такой-то".
Так что ответы там давались в такой же манере и в том же объеме, как и на конференции.
(То есть, нет ничего дурного в том, что-бы за вопросы
типа "как написать сниффер/логгер/...",
посылать куда подальше (ведь на форуме за это тоже посылают),
либо послать искать самому нужную инфу.)
Вобщем, то что делает Piter
- это не
собственно фак, а скорее сборник рецептов, knowledge base типа.
Не будучи лицом отдельно взятого сайта,
то есть не имея вышеназванных функций, фак становится
либо никому не нужным, либо настолько трудоемким проектом
(ведь у базы знаний есть претензия на выверенность и всеобъемлемость),
что на нем не грех косить бабло.
(Всё IMHO):)
← →
Piter © (2004-11-16 22:37) [118]Итак, люди! Давайте активнее:
1) Как перенести/установить/настроить алиасы BDE на другой компьютер
2) Как вставить TCheckBox в поле DBGrid ?
3) Где взять proxies.pas - я не знаю что это такое даже, поэтому пожалуйста если можно сформулируйте точный и грамотный ответ. Знаю, что можно подсунуть какой-то левый модуль... интересует верный ответ и этот модуль, какие недостатки его использования.
4) Как узнать локальный МАС локального компьютера
5) Как отправить письмо с вложением
← →
Gero © (2004-11-16 22:43) [119]
> 3) Где взять proxies.pas
Прочитай [39] пост.
← →
Piter © (2004-11-16 22:48) [120]Там было обсуждение... а мне нужен четкий, грамотный ответ
Страницы: 1 2 3 4 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
Память: 0.7 MB
Время: 0.04 c