WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  C / C++ / Visual C++
  модем и VC++

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   модем и VC++
DEiL опубликован 29-04-2001 00:26 MSK   Click Here to See the Profile for DEiL   Click Here to Email DEiL  
блин, кто знает, как работать с модемом из Visual C++? типа набрать номер и смотреть, что получает модем? помогите плиз =)
DEiL опубликован 29-04-2001 12:31 MSK     Click Here to See the Profile for DEiL  Click Here to Email DEiL     
исходники терминалки короче :))
purpe опубликован 29-04-2001 12:40 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
а ента не подошла ?
http://www.sources.ru/cpp/cpp_modem_terminal.shtml

странная какая-то штуковина ...

DEiL опубликован 29-04-2001 11:57 MSK     Click Here to See the Profile for DEiL  Click Here to Email DEiL     
хм, 10х, но она подошла пока только на половину :)
у меня просто инета 6 часов, и надо их растянуть до июня :( вот поэтому приходится задавать тупые повросы...
purpe опубликован 30-04-2001 09:26 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
та я не про твой инет :) а про статейку :)

я сам же выложил её на сайт и вот сам же теперь на неё смотрю недоумевающе :)

а что значит наполовину ?

purpe опубликован 30-04-2001 09:36 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
А ты сам-то откуда бушь ?

А то у миня обычно ночной инет в москве пропадает зря ...

DEiL опубликован 30-04-2001 22:11 MSK     Click Here to See the Profile for DEiL  Click Here to Email DEiL     
питер :(
purpe опубликован 01-05-2001 02:10 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
вот нарыл :)

Рекомендуют открывать порт как файл:

CComPort::CComPort(CString& sComPort){ m_sComPort = sComPort; m_bPortReady = FALSE;} // end constructor CComPortCComPort::~CComPort(){} // end destructor CComPort//// initialize the com port//BOOL CComPort::Initialize(){ DWORD dwRC; DWORD dwError; char sMsg[512]; m_bPortReady = TRUE; // everything is OK so far m_hCom = CreateFile(m_sComPort, GENERIC_READ | GENERIC_WRITE, 0, // exclusive access NULL, // no security OPEN_EXISTING, 0, // no overlapped I/O NULL); // null template if (m_hCom == INVALID_HANDLE_VALUE) { m_bPortReady = FALSE; dwError = GetLastError(); // example error code expansion follows LPVOID lpMsgBuf; lpMsgBuf = NULL; dwRC = FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, dwError, // from GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language (LPTSTR) &lpMsgBuf, 0, NULL); if (dwRC && lpMsgBuf) { sprintf(sMsg, "COM open failed: Port=%s Error=%d - %s", m_sComPort, dwError, lpMsgBuf); AfxMessageBox(sMsg); } else { sprintf(sMsg, "COM open failed: Port=%s Error=%d ", m_sComPort, dwError); AfxMessageBox(sMsg); } // end if if (dwRC && lpMsgBuf) { LocalFree( lpMsgBuf ); } // end if } // end if if (m_bPortReady) { m_bPortReady = SetupComm(m_hCom, 128, 128); // set buffer sizes if (!m_bPortReady) { dwError = GetLastError(); sprintf(sMsg, "SetupComm failed: Port=%s Error=%d", m_sComPort, dwError); AfxMessageBox(sMsg); } // end if } // end if if (m_bPortReady) { m_bPortReady = GetCommState(m_hCom, &m_dcb); if (!m_bPortReady) { dwError = GetLastError(); sprintf(sMsg, "GetCommState failed: Port=%s Error=%d", m_sComPort, dwError); AfxMessageBox(sMsg); } // end if } // end if if (m_bPortReady) { m_dcb.BaudRate = 9600; m_dcb.ByteSize = 8; m_dcb.Parity = NOPARITY; m_dcb.StopBits = ONESTOPBIT; m_dcb.fAbortOnError = TRUE; m_bPortReady = SetCommState(m_hCom, &m_dcb); if (!m_bPortReady) { dwError = GetLastError(); sprintf(sMsg, "SetCommState failed: Port=%s Error = %d", m_sComPort, dwError); AfxMessageBox(sMsg); } } // end if if (m_bPortReady) { m_bPortReady = GetCommTimeouts (m_hCom, &m_CommTimeouts); if (!m_bPortReady) { dwError = GetLastError(); sprintf(sMsg, "GetCommTimeouts failed: Port=%s Error = %d", m_sComPort, dwError); AfxMessageBox(sMsg); } // end if } // end if if (m_bPortReady) { m_CommTimeouts.ReadIntervalTimeout = 50; m_CommTimeouts.ReadTotalTimeoutConstant = 50; m_CommTimeouts.ReadTotalTimeoutMultiplier = 10; m_CommTimeouts.WriteTotalTimeoutConstant = 50; m_CommTimeouts.WriteTotalTimeoutMultiplier = 10; m_bPortReady = SetCommTimeouts (m_hCom, &m_CommTimeouts); if (!m_bPortReady) { dwError = GetLastError(); sprintf(sMsg, "SetCommTimeouts failed: Port=%s Error = %d", m_sComPort, dwError); AfxMessageBox(sMsg); } // end if } // end if return m_bPortReady;} // end CComPort::Initialize//// terminate the com port//void CComPort::Terminate(){ CloseHandle(m_hCom);} /

мож поможет ...

purpe опубликован 01-05-2001 02:11 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
ой :)
Jimmy опубликован 01-05-2001 16:27 MSK     Click Here to See the Profile for Jimmy  Click Here to Email Jimmy     
Еще можно TAPI использовать вроде. См. MSDN
DEiL опубликован 03-05-2001 16:18 MSK     Click Here to See the Profile for DEiL  Click Here to Email DEiL     
переправил я сорц с http://www.sources.ru/cpp/cpp_modem_terminal.shtml немного, всё ок, НО ! не пашет в вин2000 :) кто-нибудь знает, как это поправить? :))
DimDim опубликован 04-05-2001 15:35 MSK     Click Here to See the Profile for DimDim  Click Here to Email DimDim     
на КДЕГУРУ лежат исходники для работы с ком портом
класс CSerialPort AFAIR

а дальше все просто
открывашь порт,
посылаешь ATDP3222223322
ждешь CONNECT
общаешься
закрываешь порт


purpe опубликован 04-05-2001 19:17 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
тык они и сдесь есть :)
http://www.sources.ru/cpp/cpp_cserialport.shtml
DEiL опубликован 28-05-2001 13:43 MSK     Click Here to See the Profile for DEiL  Click Here to Email DEiL     
никто не знает, почему когда появляется CONNECT, то удалённый модем мне ничего не шлёт, пока я первый что-нибудь не пошлю, хотя этот ленивый модем должен первый мне слать! =)))))))

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.