CAPI Programmierung

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.

Das ADK und sein Testprogramm

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.

Eigene Programme

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.

 

 

Beispiel:

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 ...
}