Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2008, 02:01   #1
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,453
По умолчанию Button1 - автоматический поиск модема и набор номера

Всем здраствуйте. У меня вот такая не реальная мысль проскочила ). Вобщем сижу в интернете через Nokia 6630 подлюченый к ПК в качестве модема, и хотел спосить, можна ли сделато программу, которая искала модем, набирала номер который присвоин этому модему и соединяла с интернетом? И все это в Button1 .... Если нет, то как программно вызваль окошко набора номера (Windowsa)?

Последний раз редактировалось beegl; 31.05.2008 в 02:10. Причина: прошу прощения, я не в тот роздел создал тему ... поспешил. Токо заметил
beegl вне форума Ответить с цитированием
Старый 01.06.2008, 02:23   #2
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Попробуй это, может поможет:

До слова implementation напишите такой код:

Код:

{tapi Errors}
const TAPIERR_CONNECTED = 0;
const TAPIERR_DROPPED = -1;
const TAPIERR_NOREQUESTRECIPIENT = -2;
const TAPIERR_REQUESTQUEUEFULL = -3;
const TAPIERR_INVALDESTADDRESS = -4;
const TAPIERR_INVALWINDOWHANDLE = -5;
const TAPIERR_INVALDEVICECLASS = -6;
const TAPIERR_INVALDEVICEID = -7;
const TAPIERR_DEVICECLASSUNAVAIL = -8;
const TAPIERR_DEVICEIDUNAVAIL = -9;
const TAPIERR_DEVICEINUSE = -10;
const TAPIERR_DESTBUSY = -11;
const TAPIERR_DESTNOANSWER = -12;
const TAPIERR_DESTUNAVAIL = -13;
const TAPIERR_UNKNOWNWINHANDLE = -14;
const TAPIERR_UNKNOWNREQUESTID = -15;
const TAPIERR_REQUESTFAILED = -16;
const TAPIERR_REQUESTCANCELLED = -17;
const TAPIERR_INVALPOINTER = -18;

{tapi size constants}
const TAPIMAXDESTADDRESSSIZE = 80;
const TAPIMAXAPPNAMESIZE = 40;
const TAPIMAXCALLEDPARTYSIZE = 40;
const TAPIMAXCOMMENTSIZE = 80;
const TAPIMAXDEVICECLASSSIZE = 40;
const TAPIMAXDEVICEIDSIZE = 40;

function tapiRequestMakeCallA(DestAddress : PAnsiChar;
AppName : PAnsiChar;
CalledParty : PAnsiChar;
Comment : PAnsiChar) : LongInt;
stdcall; external 'TAPI32.DLL';

function tapiRequestMakeCallW(DestAddress : PWideChar;
AppName : PWideChar;
CalledParty : PWideChar;
Comment : PWideChar) : LongInt;
stdcall; external 'TAPI32.DLL';

function tapiRequestMakeCall(DestAddress : PChar;
AppName : PChar;
CalledParty : PChar;
Comment : PChar) : LongInt;
stdcall; external 'TAPI32.DLL';
Нажатие кнопки обработайте следующим образом:

Код:

procedure TForm1.Button1Click(Sender: TObject);
var
  DestAddress : string;
  CalledParty : string;
  Comment : string;
begin
  DestAddress := '000-00-00'; {phone number}
  CalledParty := '___Nikolay';
  Comment := 'Calling to ___Nikolay';
  tapiRequestMakeCall(pChar(DestAddress),
  PChar(Application.Title),
  pChar(CalledParty),
  PChar(Comment));
end;
Всегда рад помочь!

Последний раз редактировалось Stilet; 02.06.2008 в 09:16.
Terran вне форума Ответить с цитированием
Старый 01.06.2008, 02:58   #3
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,453
По умолчанию

программа запустилась, но при нажатии на баттон вывело ошибку: ... Операция не выполнена по не извесной причине, ещё в верхнем левом углу выскочели две панельки с сообщением "Не правельный номер или вызываемое устройство не работает". Но вставил в DestAddress := '*99#';, вывело только ошибку с панельками в левом верхнем углу

Последний раз редактировалось beegl; 01.06.2008 в 03:04.
beegl вне форума Ответить с цитированием
Старый 01.06.2008, 11:48   #4
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Тут надо с кодом разбираться или с настройками. Я тут помочь не смогу, у меня стоит модем ADSL и этот код к нему не подойдёт, неначем поэксперементировать. Посмотри ещё по этим ссылкам, может помогут.

http://www.delphimaster.ru/cgi-bin/f...988621981&n=20

http://www.delphihelp.org/inet_connection_params.html
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 01.06.2008, 13:22   #5
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

А зачем здесь TAPI, если дозвониться нужно до интернета?
RasEnumEntries, RasDial, RasDialDlg.
B_N вне форума Ответить с цитированием
Старый 01.06.2008, 14:08   #6
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,453
По умолчанию

Цитата:
Сообщение от B_N Посмотреть сообщение
А зачем здесь TAPI, если дозвониться нужно до интернета?
RasEnumEntries, RasDial, RasDialDlg.
B_N, помоги пожалуйста розобраца с этой задачей.

вот нашол, запускаеца. но для телефона не идет: uses
WinInet;
Код:
 // Causes the modem to automatically dial the default Internet connection. 
procedure TForm1.Button1Click(Sender: TObject);
 var
   dwConnectionTypes: DWORD;
 begin
   dwConnectionTypes := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN +
     INTERNET_CONNECTION_PROXY;
   if not InternetGetConnectedState(@dwConnectionTypes, 0) then
     // not connected 
    if not InternetAutodial(INTERNET_AUTODIAL_FORCE_ONLINE or
       INTERNET_AUTODIAL_FORCE_UNATTENDED, 0) then
     begin
       // error 
    end;
 end;


 // hangup the default Internet connection. 
procedure TForm1.Button2Click(Sender: TObject);
 var
   dwConnectionTypes: DWORD;
 begin
   dwConnectionTypes := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN +
     INTERNET_CONNECTION_PROXY;
   if InternetGetConnectedState(@dwConnectionTypes, 0) then
     // connected 
    InternetAutodialHangup(0);
 end;
P.S. прошу порщеня, если посчитаеца, что это флуд.



___________________________________ ___________________________________ ___________________________
Всем здраствуйте, извените, что обратно потривожил этой темой
Возвратилса я к своей теме, т.к. я нашол тогда нужный мне код, не тот, что выше, но прошло время, и исходник пропал. Есть ли у кого код такой, где присуцтвут ListBox, модуль RasUnit

В вложении сам тот проект, где есть кнопка Соединение, при нажатии на которую выполнялса автоматический поиск модемов в ListBox(в моём случяе, происходил поиск моб. телефона, который я использую в качестве модема) и при клика на найденый в списке модемов происходил набор номера т.е. поисходило соединение с интернетом. Вобщем, программа заместь этого диалогового окна:

Буду очень сяслив если найдёца этот код-исходник. Надеюсь на Вышу помощь
Вложения
Тип файла: rar ProfiEx.rar (617.1 Кб, 19 просмотров)

Последний раз редактировалось KORN; 14.03.2009 в 21:31. Причина: да когда же ты уже начнешь пользоваться правкой???
beegl вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматический Ярлык xls файла valerij Microsoft Office Excel 33 19.01.2009 11:04
WebBrowser1 and Button1 beegl Компоненты Delphi 3 18.11.2008 16:37
как обновить робочий стол через Button1 beegl Общие вопросы Delphi 7 30.05.2008 11:39
Button1 и на Form2 открылся текст из файла (таблица)в StringGrid1. KSP Общие вопросы Delphi 2 19.09.2007 18:51
Как позвонить с модема на какой-нибудь номер? Герыч Свободное общение 6 21.05.2007 08:16