Esempio n. 1
0
        // LINEDEVCAPS yapısından ve byte dizisi parametrelerin kullanarak,
        // bir hattın alanlarını dolduracağız.
        public bool PutLineProperties(TAPIClass.LINEDEVCAPS lineDevCaps,
                                      Byte[] buffer)
        {
            Decoder dec = null; // Decoder nesnesi

            try
            {
                // Taşıyıcı biçimi değerini ata.
                this.m_lineBearerModes = (Enums.LineBearerMode)lineDevCaps.dwBearerModes;
                // Hat özellikleri değerini ata.
                this.m_lineFeatures = (Enums.LineFeature)lineDevCaps.dwLineFeatures;
                // Çağrı ortamı değerini ata.
                this.m_lineMediaTypes = (Enums.LineMediaMode)lineDevCaps.dwMediaModes;
                // LINEDEVCAPS yapısındaki dwStringFormat parametresi hattın
                // kullandığı string formatını verir.
                this.m_StringFormat = (Enums.StringFormat)lineDevCaps.dwStringFormat;

                // GetDecoder metoduyla Decoder tipinden bir nesne atanıyor.
                dec = TAPIClass.GetDecoder(this.m_StringFormat);
                // Decoder nesnesi null değerse?
                if (dec != null)
                {
                    // GetStringFromByteArray tanımlı metodumuzu çağırarak
                    // hat adını değişkene ata.
                    this.m_sLineName = StrUtils.GetStringFromByteArray(buffer,
                                                                       (int)lineDevCaps.dwLineNameOffset,
                                                                       (int)lineDevCaps.dwLineNameSize,
                                                                       dec);
                    // GetStringFromByteArray tanımlı metodumuzu çağırarak
                    // hizmet sağlayıcısı adını değişkene ata.
                    this.m_sProviderInfo = StrUtils.GetStringFromByteArray(buffer,
                                                                           (int)lineDevCaps.dwProviderInfoOffset,
                                                                           (int)lineDevCaps.dwProviderInfoSize,
                                                                           dec);

                    // Hat sesli aramayı destekliyor mu?
                    if (CanSupportVoiceCall())
                    {
                        this.m_bSupportVoiceCall = true;
                    }
                }//if

                return(true);
            }
            catch (Exception ex)
            {
                //MessageBox.Show(ex.Message);
                return(false);
            }
        }//PutLineProperties
 public static extern Int32 lineOpen(
     // TAPI ait handle.
     IntPtr hLineApp,
     // Açılacak hattın tanıtıcı nosu.
     UInt32 dwDeviceID,
     // Açılan hatta ait handle
     ref IntPtr hLine,
     // TAPI versiyonu
     UInt32 dwAPIVersion,
     // dwExtVersion: Özel kullanım. Sıfır değeri verilebilir.
     UInt32 dwExtVersion,
     // Geri çağrılır fonksiyon nesnesi (TAPI tarafından yorumlanmaz)
     LineCallback dwCallbackInstance,
     // Uygulamanın çağrıyla ilgili ayrıcalıklarının parametresi
     Enums.LineCallPrivilege dwPrivileges,
     // Çağrı ortamıyla ilgili parametre.
     Enums.LineMediaMode dwMediaModes,
     // LINECALLPARAMS yapısı
     LINECALLPARAMS lpCallParams);
        // LINEDEVCAPS yapısından ve byte dizisi parametrelerin kullanarak,
        // bir hattın alanlarını dolduracağız.
        public bool PutLineProperties(TAPIClass.LINEDEVCAPS lineDevCaps,
            Byte[] buffer)
        {
            Decoder dec = null;     // Decoder nesnesi

            try
            {
                // Taşıyıcı biçimi değerini ata.
                this.m_lineBearerModes = (Enums.LineBearerMode)lineDevCaps.dwBearerModes;
                // Hat özellikleri değerini ata.
                this.m_lineFeatures = (Enums.LineFeature)lineDevCaps.dwLineFeatures;
                // Çağrı ortamı değerini ata.
                this.m_lineMediaTypes = (Enums.LineMediaMode)lineDevCaps.dwMediaModes;
                // LINEDEVCAPS yapısındaki dwStringFormat parametresi hattın
                // kullandığı string formatını verir.
                this.m_StringFormat = (Enums.StringFormat)lineDevCaps.dwStringFormat;

                // GetDecoder metoduyla Decoder tipinden bir nesne atanıyor.
                dec = TAPIClass.GetDecoder(this.m_StringFormat);
                // Decoder nesnesi null değerse?
                if (dec != null)
                {
                    // GetStringFromByteArray tanımlı metodumuzu çağırarak
                    // hat adını değişkene ata.
                    this.m_sLineName = StrUtils.GetStringFromByteArray(buffer,
                        (int)lineDevCaps.dwLineNameOffset,
                        (int)lineDevCaps.dwLineNameSize,
                        dec);
                    // GetStringFromByteArray tanımlı metodumuzu çağırarak
                    // hizmet sağlayıcısı adını değişkene ata.
                    this.m_sProviderInfo = StrUtils.GetStringFromByteArray(buffer,
                        (int)lineDevCaps.dwProviderInfoOffset,
                        (int)lineDevCaps.dwProviderInfoSize,
                        dec);

                    // Hat sesli aramayı destekliyor mu?
                    if (CanSupportVoiceCall())
                        this.m_bSupportVoiceCall = true;
                }//if

                return true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return false;
            }
        }