Der einfachste Weg zum Einstieg in die Capi-Programmierung führt über das CAPI-ADK der Firma AVM: ftp://ftp.avm.de/develper/capi-adk/. An dieser Stelle läßt sich auch die gesamte CAPI Dokumentation als PDF-Files herunterladen.
Damit das ADK in der .NET IDE für WIN32 korrekt übersetzt wird, muss einiges in der Umgebung angepaßt werden:
1.) Compiler-Einstellungen des Projekts (Projektmappen-Explorer -> rechte
Maustaste auf den Projektnamen -> Eigenschaften)
Konfigurationseigenschaften (Release und Debug unterscheiden sich nur in
"NDEBUG" und "_DEBUG")
--> C/C++
--> Präprozessor à Präprozessordefinitionen:
WIN32;NDEBUG;TARGET_32BIT;_CONSOLE
Das Define _CONSOLE muss natürlich nur bei Konsolenapplikation eingefügt
werden.
2.) Die Capi-Bibliothek "cap2032d.lib" in das Projekt aufnehmen. Hier ist ein Screenshot meiner Projekt-Umgebung: Nach diesen Modifikationen lässt sich das Testprogramm sofort fehlerfrei übersetzen.
Zur Einbindung in eigene Programme sind weitere Vorkehrungen zu treffen:
Alle c-Dateien müssen ohne vorkompilierte Headerdatei verwendet werden:
Compiler-Einstellungen der einzelnen Dateien (Projektmappen-Explorer --> rechte Maustaste auf die Datei -> Eigenschaften)
Konfigurationseigenschaften
--> C/C++
--> vorkompilierte Headerdatei:
--> Erstellen/Verwenden...: Vorkompilierte Header nicht verwenden
Wenn Bedarf für Beispielcode besteht, einfach eine Mail an mich senden.
void Dial(char* Telnr) {
if (InitMyCapi()) //retval==0 -> CapiInit Okay
return;
//"Anwahl..."
DialMyCapi(Telnr); //Telefonnr
//"Warten auf Verbindung"
for (i=0; i<80; i++){
WaitFor(100); // max 8 Sek warten bis
online
HandleMyCapi();
if (IsConnected()==1){
break;
}
}
if (i>79){
WaitForHangup();
return; //Nicht Online
}
... IST ONLINE ...
}