Slettet bruger
18. maj 1999 - 13:12
Der er
25 kommentarer
TAPI i Delphi 4
Jeg ved at man skal bruge TAPI (Telephone Application Program Interface) for at kunne lave noget med telefoner gennem Delphi. Hvordan gør jeg det ? Hvor kan jeg få komponenter til Delphi 4 ? (DER VIRKER!!!) Og hvor kan jeg få noget source-hlp ?
Annonceindlæg fra Immeo
Slettet bruger
19. maj 1999 - 13:33
#2
F*ck det her lede system :o( Anywayz: 127 >> Thx.. men har desværre været inde på Delphi's superside :o/ Havde ozo dl dem før, (virkede ikke til Delphi 4)
Slettet bruger
19. maj 1999 - 13:43
#3
Hvordan kalder man TAPI funktionen i Delphi 4 ? Og hvordan opretter man en "sink" (TapiCallBack) ? Det er ret nødvendigt nemlig :o( Jeg kender alle kommandoerne til at ringe op med osv., jeg ved bare ikke hvordan jeg skal aktivere dem. f.eks. Label1.CAPTION, hvor jeg kender CAPTION men ikke Label1. (Label1 er en parallel til TAPI/whatever)
Slettet bruger
19. maj 1999 - 13:44
#4
Er det egentlig ikke ret skidt at der ikke er mere information om emnet på nettet ?
Det eneste jeg ellers kan foreslå er at søge efter TAPI på Microsfts hjemmeside (det er jo de der har lavet det)
Jeg ved nu at man skal bruge kommandoen: LineInitialize( lphLineApp, hInstance, LineCallback, lpszFriendlyAppName, lpdNumDevs) Men når jeg skriver dem ind får jeg fejl-meddelsen om at lphLineApp ikke er af det korrekte format. Jeg bruger linien: var FLineApp: lphLineApp; til at definere den. Er det ikke korrekt ? (der skal forresten snabela foran)
..har fundet ud af det... Har et helt nyt problem! Hvis du har den nyeste tapi.pas Send den venligst til mig :) Zzapper@hotmail.com
Den har jeg ikke, (har kun Delphi 3 C/S)
Mig er gået over til Delphi 3... (altså med det program) Hvis du har bare PRØVET at få noget til at virke, så giv mig lige besked... Danke!
Fundet følgende om callback, hved ikke om det hjælper: // This code sample shows only part of the callback function. LPTSTR lpszStatus; switch (dwMsg) { case LINE_CALLSTATE: // If the CALLSTATE message does not apply to the call in // progress, then return. if (g_hCall != (HCALL) hDevice) return; // dwParam1 is the specific CALLSTATE change occurring. switch (dwParam1) { case LINECALLSTATE_DIALTONE: lpszStatus = TEXT("Dial tone"); break; case LINECALLSTATE_DIALING: lpszStatus = TEXT("Dialing"); break; case LINECALLSTATE_PROCEEDING: lpszStatus = TEXT("Dialing has completed and the call ") TEXT("is proceeding."); break; case LINECALLSTATE_RINGBACK: lpszStatus = TEXT("Ring back"); break; case LINECALLSTATE_CONNECTED: lpszStatus = TEXT("Connected"); break; case LINECALLSTATE_BUSY: ErrorBox (TEXT("Line busy, shutting down")); CurrentLineClose (); if (g_hwndDial) SendMessage (g_hwndDial, WM_COMMAND, MAKEWPARAM(IDOK,0), 0); break; case LINECALLSTATE_IDLE: ErrorBox (TEXT("Line is idle")); CurrentLineClose (); if (g_hwndDial) SendMessage (g_hwndDial, WM_COMMAND, MAKEWPARAM(IDOK,0), 0); break; case LINECALLSTATE_SPECIALINFO: ErrorBox (TEXT("Special Information, couldn't dial number")); CurrentLineClose (); if (g_hwndDial) SendMessage (g_hwndDial, WM_COMMAND, MAKEWPARAM(IDOK,0), 0); break; case LINECALLSTATE_DISCONNECTED: { LPTSTR lpszDisconnected; switch (dwParam2) { case LINEDISCONNECTMODE_NORMAL: lpszDisconnected = TEXT("Remote party disconnected"); break; case LINEDISCONNECTMODE_UNKNOWN: lpszDisconnected = TEXT("Disconnected: Unknown reason"); break; case LINEDISCONNECTMODE_REJECT: lpszDisconnected = TEXT("Remote Party rejected call"); break; case LINEDISCONNECTMODE_PICKUP: lpszDisconnected = TEXT("Disconnected: Local phone picked up"); break; case LINEDISCONNECTMODE_FORWARDED: lpszDisconnected = TEXT("Disconnected: Forwarded"); break; case LINEDISCONNECTMODE_BUSY: lpszDisconnected = TEXT("Disconnected: Busy"); break; case LINEDISCONNECTMODE_NOANSWER: lpszDisconnected = TEXT("Disconnected: No Answer"); break; case LINEDISCONNECTMODE_BADADDRESS: lpszDisconnected = TEXT("Disconnected: Bad address"); break; case LINEDISCONNECTMODE_UNREACHABLE: lpszDisconnected = TEXT("Disconnected: Unreachable"); break; case LINEDISCONNECTMODE_CONGESTION: lpszDisconnected = TEXT("Disconnected: Congestion"); break; case LINEDISCONNECTMODE_INCOMPATIBLE: lpszDisconnected = TEXT("Disconnected: Incompatible"); break; case LINEDISCONNECTMODE_UNAVAIL: lpszDisconnected = TEXT("Disconnected: Unavailable"); break; case LINEDISCONNECTMODE_NODIALTONE: lpszDisconnected = TEXT("Disconnected: No dial tone"); break; default: lpszDisconnected = TEXT("Disconnected: LINECALLSTATE; Unknown reason"); break; } ErrorBox (lpszDisconnected); CurrentLineClose (); if (g_hwndDial) SendMessage (g_hwndDial, WM_COMMAND, MAKEWPARAM(IDOK,0), 0); break; } } break;
Heheh... Thx.. Men det kræver at der er noget der sender tilbage... Kan ikke få noget til at virke :o( Men tak alligevel :)
Hvad er det helt præcist dit program skal kunne ?
Ret simpelt indtil videre... Skriver et tlf. nummer, trykker på en knap, og programmet ringer op. Det eneste indtil videre.. (mit første problem) Btw.. Al' den kode, er det ikke til C++ ?
11. juni 1999 - 11:08
#17
Nej, det er Windows API kald
11. juni 1999 - 18:28
#18
...Jaer... Hvordan får jeg det inplementeret i et Delphi program?
11. juni 1999 - 18:47
#19
>>januskh jeg kan da godt se at det er API kald, men det er stadig skrevet i C++
14. juni 1999 - 09:38
#20
14. juni 1999 - 14:30
#21
jeg får nu ellers: HTTP 404 NOT Found så det vil jeg nu ikke sige!!!!!!!!!
14. juni 1999 - 14:32
#22
14. juni 1999 - 14:34
#23
25. oktober 1999 - 22:25
#24
Lukker du ikke lige spørgsmålet? Evt. stille et nyt? Har du fået det til at virke?
01. september 2012 - 17:18
#25
Hva? Skal det her spm ikke snart lukkes?
Kurser inden for grundlæggende programmering