View Full Version : حرفه ای: چگونه میشه لیست مودم هایی که در ویندوز نصب شده اند را گرفت؟
kpprogrammer
سه شنبه 28 تیر 1390, 18:47 عصر
سلام دوستان.
خدا قوت...
اولاً، آیا کامپوننتی هست که در دلفی بشه با اون اس ام اس ارسال کرد؟ البته کامپوننت استاندارد دلفی باشه نه اکتیو ایکس؟
ثانیا: چگونه میشه لیست مودم هایی که در ویندوز نصب شده اند را گرفت؟
Felony
سه شنبه 28 تیر 1390, 19:04 عصر
اولاً، آیا کامپوننتی هست که در دلفی بشه با اون اس ام اس ارسال کرد؟ البته کامپوننت استاندارد دلفی باشه نه اکتیو ایکس؟
کامپوننت استاندارد دلفی یعنی با خود دلفی نصب بشه که همچین موردی موجود نیست ؛ کامپوننت غیر استاندارد! اگر میخوای Kylix SMS هست که Activex هم نیست !
چگونه میشه لیست مودم هایی که در ویندوز نصب شده اند را گرفت؟
با استفاده از توابع TAPI (http://msdn.microsoft.com/en-us/library/ms734273(v=vs.85).aspx) .
kpprogrammer
چهارشنبه 29 تیر 1390, 08:36 صبح
کامپوننت استاندارد دلفی یعنی با خود دلفی نصب بشه که همچین موردی موجود نیست ؛ کامپوننت غیر استاندارد! اگر میخوای Kylix SMS هست که Activex هم نیست !
با استفاده از توابع TAPI (http://msdn.microsoft.com/en-us/library/ms734273(v=vs.85).aspx) .
دستت درد نکنه دوست عزیز. اگه میشه لینک دریافتشو هم بزاری ممنون میشم.
باز هم ممنون. ولی اگه مشخص میکردی که با کدام توابع و یه نمونه کد هم میذاشتی خیلی بیشتر کمکم میکردی!
Felony
چهارشنبه 29 تیر 1390, 08:55 صبح
دستت درد نکنه دوست عزیز. اگه میشه لینک دریافتشو هم بزاری ممنون میشم.
لینک دریافت چی ؟! برای کار با TAPI شما باید با COM آشنایی داشته باشید که اینطور که معلومه ندارید .
باز هم ممنون. ولی اگه مشخص میکردی که با کدام توابع و یه نمونه کد هم میذاشتی خیلی بیشتر کمکم میکردی!
متاسفانه چیز عمومی نیست که نمونه کد ازش موجود باشه ، توقع هم نداشته باشید کسی بشینه و در این مورد براتون نمونه کد بنویسه !
این لینک ها رو هم نگاهی بندازید ، لینک اولی یکی از بهترین کامپوننت های موجود برای کار با TAPI در Delphi هست ، البته من خیلی وقت پیش باهاش کار کردم و نمیدونم جدیدا به روز شده یا نه :
http://sourceforge.net/projects/tpapro/
http://www.toptapi.de/?gclid=CO-LhdOMj6oCFcsb4QodVkkPxQ
http://www.torry.net/pages.php?id=199
سر نخ ها و موارد مورد نیاز در اختیارتون قرار گرفت ، خودتون شروع به کار کنید و مشکلاتتون رو همین جا مطرح کنید .
Vahid.Shatery
شنبه 01 مرداد 1390, 23:11 عصر
سلام
با KDTEle راحت این کار را میشه کرد .
procedure TFormDlgFaxLineSelection.ComboBoxLinesChange(Sende r: TObject);
var lvRet: Integer;
begin
Memo1.Lines.Clear;
lvRet:=KDPhoneControl.GetLineCaps(ComboBoxLines.It emIndex, vCurrentLineCaps);
if lvRet<>0 then
begin
Memo1.Lines.Add('Error: '+KDPhoneControl.GetErrorMsg(lvRet));
exit;
end;
if lcCallerID in vCurrentLineCaps then
Memo1.Lines.Add('Caller ID - OK')
else
Memo1.Lines.Add('Caller ID - UNAVAILABLE');
if lcDigitPulseDetect in vCurrentLineCaps then
Memo1.Lines.Add('Digit pulse detection - OK')
else
Memo1.Lines.Add('Digit pulse detection - UNAVAILABLE');
if lcDigitToneDetect in vCurrentLineCaps then
Memo1.Lines.Add('Digit tone detection - OK')
else
Memo1.Lines.Add('Digit tone detection - UNAVAILABLE');
if lcWavePlayRec in vCurrentLineCaps then
Memo1.Lines.Add('Play and record wave - OK')
else
Memo1.Lines.Add('Play and record wave - UNAVAILABLE');
If lcDataDevice in vCurrentLineCaps Then
Memo1.Lines.Add('Serial port device - OK')
else
Memo1.Lines.Add('Serial port device - UNAVAILABLE');
if lcExtDevAux in vCurrentLineCaps then
begin
Memo1.Lines.Add('Auxiliary microphone and speaker capabilities:');
if lcExtDevAuxMicOnSpeakerOff in vCurrentLineCaps then
Memo1.Lines.Add(' -Turning on the mic only - OK')
else
Memo1.Lines.Add(' -Turning on the mic only - UNAVAILABLE');
if lcExtDevAuxMicOffSpeakerOn in vCurrentLineCaps then
Memo1.Lines.Add(' -Turning on the speaker only - OK')
else
Memo1.Lines.Add(' -Turning on the speaker only - UNAVAILABLE');
if lcExtDevAuxMicOnSpeakerOn in vCurrentLineCaps then
Memo1.Lines.Add(' -Turning on the microphone and the speaker simultaneously - OK')
else
Memo1.Lines.Add(' -Turning on the microphone and the speaker simultaneously - UNAVAILABLE');
if lcExtDevAuxMicGain in vCurrentLineCaps then
Memo1.Lines.Add(' -Mic gain adjusting - OK')
else
Memo1.Lines.Add(' -Mic gain adjusting - UNAVAILABLE');
if lcExtDevAuxSpeakerVolume in vCurrentLineCaps then
Memo1.Lines.Add(' -Speaker volume adjusting - OK')
else
Memo1.Lines.Add(' -Speaker volume adjusting - UNAVAILABLE');
end
else
Memo1.Lines.Add('Auxiliary microphone and speaker - UNAVAILABLE');
if lcExtDevHandset in vCurrentLineCaps then
begin
Memo1.Lines.Add('Local phone handset capabilities:');
if lcExtDevHandsetMicOnSpeakerOff in vCurrentLineCaps then
Memo1.Lines.Add(' -Turning on the mic only - OK')
else
Memo1.Lines.Add(' -Turning on the mic only - UNAVAILABLE');
if lcExtDevHandsetMicOffSpeakerOn in vCurrentLineCaps then
Memo1.Lines.Add(' -Turning on the speaker only - OK')
else
Memo1.Lines.Add(' -Turning on the speaker only - UNAVAILABLE');
if lcExtDevHandsetMicOnSpeakerOn in vCurrentLineCaps then
Memo1.Lines.Add(' -Turning on the microphone and the speaker simultaneously - OK')
else
Memo1.Lines.Add(' -Turning on the microphone and the speaker simultaneously - UNAVAILABLE');
if lcExtDevHandsetMicGain in vCurrentLineCaps then
Memo1.Lines.Add(' -Mic gain adjusting - OK')
else
Memo1.Lines.Add(' -Mic gain adjusting - UNAVAILABLE');
if lcExtDevHandsetSpeakerVolume in vCurrentLineCaps then
Memo1.Lines.Add(' -Speaker volume adjusting - OK')
else
Memo1.Lines.Add(' -Speaker volume adjusting - UNAVAILABLE');
end
else
Memo1.Lines.Add('Local phone handset - UNAVAILABLE');
end;
و :
procedure TFormFax.TeleponeDeviceSelect1Click(Sender: TObject);
begin
if KDPhone1.NumberOfLines=0 then
begin
ShowMessage('There is no telephone device installed.');
exit;
end;
with TFormDlgFaxLineSelection.Create(Self) do
try
KDPhoneControl:=KDPhone1;
PopulateCombobox;
if ShowModal=mrOK then
begin
if KDPhone1.CurrentMediaMode=mmVoice then
LabelCurrentMediaMode.Caption:='Voice and Fax'
else
LabelCurrentMediaMode.Caption:='Fax Only';
end;
finally
Free;
end;
end;
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.