اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر
Option Compare Database
Option Explicit

Const SND_ALIAS_SYSTEMASTERISK      As String = "SystemAsterisk"
Const SND_ALIAS_SYSTEMDEFAULT       As String = "SystemDefault"
Const SND_ALIAS_SYSTEMEXCLAMATION   As String = "SystemExclamation"
Const SND_ALIAS_SYSTEMEXIT          As String = "SystemExit"
Const SND_ALIAS_SYSTEMHAND          As String = "SystemHand"
Const SND_ALIAS_SYSTEMQUESTION      As String = "SystemQuestion"
Const SND_ALIAS_SYSTEMSTART         As String = "SystemStart"
Const SND_ALIAS_SYSTEMWELCOME       As String = "SystemWelcome"
Const SND_ALIAS_YouGotMail          As String = "MailBeep"

' playsound Params
Const SND_LOOP = &H8
Const SND_ALIAS = &H10000
Const SND_NODEFAULT = &H2 ' silence if no sound associated with event
Const SND_ASYNC = &H1 ' play async (don't freeze program while sound is playing)

Private Declare PtrSafe Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long


  
Private Sub Form_Close()
PlaySound vbNullString, ByVal 0&, SND_NODEFAULT
End Sub

Private Sub Form_Load()
PlaySound CurrentProject.Path & "\" & "DB_FILES\About.wav", vbNull, SND_ALIAS Or SND_NODEFAULT Or SND_ASYNC Or SND_LOOP
End Sub

 

اي سؤال انا حاضر، اتمنى الفائدة للجميع.

  • Like 1
قام بنشر

السلام عليكم

شكرا جزيلا أستاذ على هذا المثال الرائع 

و هذه طريقة أخرى وجدتها في منتدانا الغالي و أظنها للأخ محمد سوداني 

إضافة هذا الكود إلى وحدة نمطية

Declare Function apisndPlaySound Lib "winmm" Alias "sndPlaySoundA" (ByVal filename As String, ByVal snd_async As Long) As Long

Function Playsound(sWavFile As String)
   If apisndPlaySound(sWavFile, 1) = 1 Then
   End If
End Function

و  نضع هذا الكود خلف زر أمر أو أي حدث آخر

Playsound (Application.CurrentProject.Path & "\ringin.wav")

 

قام بنشر
15 ساعات مضت, صالح حمادي said:

السلام عليكم

شكرا جزيلا أستاذ على هذا المثال الرائع 

و هذه طريقة أخرى وجدتها في منتدانا الغالي و أظنها للأخ محمد سوداني 

إضافة هذا الكود إلى وحدة نمطية


Declare Function apisndPlaySound Lib "winmm" Alias "sndPlaySoundA" (ByVal filename As String, ByVal snd_async As Long) As Long

Function Playsound(sWavFile As String)
   If apisndPlaySound(sWavFile, 1) = 1 Then
   End If
End Function

و  نضع هذا الكود خلف زر أمر أو أي حدث آخر


Playsound (Application.CurrentProject.Path & "\ringin.wav")

 

 

حياك الله استاذ @صالح حمادي

وشكرا على اثرائك للموضوع.

للمزيد حول دالة sndPlaySoundA اضغط على اسم الدالة.

  • Like 1
قام بنشر

أسمحو لي بمداخله بسيطة .. تشبة مثال أستاذي @صالح حمادي لكن بشكل أخر

حالياً استخدم هذا الكود .. وجدة في هذا المنتدى العريق

ضع هذا الكود في راس مديول صفحة النموذج

Dim a As Boolean
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

 

وضع هذا الكود تحت زر أو أي أمر

R = sndPlaySound("C:\WINDOWS\MEDIA\ButtonQathi.wav", 1)

لاحظ أن مسار الملف الصوت هو C:\WINDOWS\MEDIA\Qathi.wav

وأسم ملف الصوت هو Qathi.wav

قام بنشر
2 دقائق مضت, qathi said:

أسمحو لي بمداخله بسيطة .. تشبة مثال أستاذي @صالح حمادي لكن بشكل أخر

حالياً استخدم هذا الكود .. وجدة في هذا المنتدى العريق

ضع هذا الكود في راس مديول صفحة النموذج


Dim a As Boolean
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

 

وضع هذا الكود تحت زر أو أي أمر


R = sndPlaySound("C:\WINDOWS\MEDIA\ButtonQathi.wav", 1)

لاحظ أن مسار الملف الصوت هو C:\WINDOWS\MEDIA\Qathi.wav

وأسم ملف الصوت هو Qathi.wav

 

اين الجديد في ردك اخي؟ نفس الدالة طرحها الاخ @صالح حمادي

 

اقتباس

Declare Function apisndPlaySound Lib "winmm" Alias "sndPlaySoundA" (ByVal filename As String, ByVal snd_async As Long) As Long

 

  • Like 1
قام بنشر

أخي @SEMO.Pa3x لا تستعجل بالرد

 أقراء الكود جيداً فهو مختلف جدا في صياغته ..

الجديد أن الكود أستاذي الغالي صالح حمادي كما قال أنك تظع دالة  Function في مديول .. والكود الذي اعطيتك ياخي .. يوضع في راس صفحة الفجول للنموذج الحالي وليس في مديول

كما أن استدعاء ملف الصوت واضح الاختلاف

فأن أصبت فمن الله وأن أخطأت فمن نفسي والشيطان ..

قام بنشر
6 ساعات مضت, qathi said:

أخي @SEMO.Pa3x لا تستعجل بالرد

 أقراء الكود جيداً فهو مختلف جدا في صياغته ..

الجديد أن الكود أستاذي الغالي صالح حمادي كما قال أنك تظع دالة  Function في مديول .. والكود الذي اعطيتك ياخي .. يوضع في راس صفحة الفجول للنموذج الحالي وليس في مديول

كما أن استدعاء ملف الصوت واضح الاختلاف

فأن أصبت فمن الله وأن أخطأت فمن نفسي والشيطان ..

اخي لا تناقش بما ليس لك به علم.

اقتباس

 أقراء الكود جيداً فهو مختلف جدا في صياغته ..

الدالة نفس الدالة

Declare Function apisndPlaySound Lib "winmm" Alias "sndPlaySoundA" (ByVal filename As String, ByVal snd_async As Long) As Long

Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

 

لا تغرك مسميات البراميترات وغيرها مجرد مسميات لكن تبقى الدالة هي ( sndPlaySoundA ) ضمن فضاء المكتبة ( winmm.dll )

 

اقتباس

الجديد أن الكود أستاذي الغالي صالح حمادي كما قال أنك تظع دالة  Function في مديول .. والكود الذي اعطيتك ياخي .. يوضع في راس صفحة الفجول للنموذج الحالي وليس في مديول

 كما أن استدعاء ملف الصوت واضح الاختلاف

ان وضعت الكود في ( Module ) او في رأس الصفحة او في نهاية الصفحة.. سيعمل لانك تتعامل مع winAPI والذي يحدد ذلك طبيعة الدالة ( Private ) او ( Public ).

اما القيمة ( Boolean ) لكي ترجعلك قيم منطقية في حال تشغيل الصوت أو لا.

 

قام بنشر (معدل)
في ٢٣‏/٤‏/٢٠١٩ at 23:33, SEMO.Pa3x said:

اخي لا تناقش بما ليس لك به علم.

لم أنتبه لردك ألا الأن 

غرور بالرد .. وغلضة .. ماهذا ؟؟
أين التواضع ؟؟؟

شاركت ما معي كما شارك الأخوة 
أخذت الكود من هذا المنتدى الشامخ .. فأن كان خطاء أو لا يعجبك فليس خطائي بل خطاء من قام بأنشأة ووضعة بالمنتدى
تحملت عناء وضع رد لمشاركتك حتى نثري موضوعك .. واعطيتك نتاج بحثي .. 

وكان ردك لي دون سواي هكذا .. أهاكذا يكون خلق المسلم؟

هل بردك هذا تريد أن تذل الناس .. هل هذا  من أدب الحديث؟

أما كان منك أن تضع كلام طيب فأن المسلم لا يفوح منه ألا الطيب
هب أني لا أفقة شيء وأخطاءت .. أهاكذا يكون ردك؟ 

من لا يشكر الناس لا يشكر الله

 

ثم بالله عليك كيف أعلم أني مخطئ  أن لم أناقش ؟؟؟ .. وهل يولد المرء عالماً ؟؟
 

في الأخير أقول لك جزاك الله خير .. فأنتم قدوة

تم تعديل بواسطه qathi
فأنتم قدوة
قام بنشر
1 دقيقه مضت, qathi said:

لم أنتبه لردك ألا الأن 

غرور بالرد .. وغلضة .. ماهذا ؟؟
أين التواضع ؟؟؟

شاركت ما معي كما شارك الأخوة 
أخذت الكود من المنتدى الشامخ .. فأن كان خطاء أو لا يعجبك فليس خطائي بل خطاء من قام بأنشأة ووضعة بالمنتدى
تحملت عناء وضع رد لمشاركتك حتى نثري موضوعك .. واعطيتك نتاج بحثي .. 

وكان ردك لي دون سواي هكذا .. أهاكذا يكون خلق المسلم؟

هل بردك هذا تريد أن تذل الناس .. هل هذا  من أدب الحديث؟

أما كان منك أن تضع كلام طيب فأن المسلم لا يفوح منه ألا الطيب
هب أني لا أفقة شيء وأخطاءت .. أهاكذا يكون ردك؟ 

من لا يشكر الناس لا يشكر الله

 

ثم بالله عليك كيف أعلم أني مخطئ  أن لم أناقش ؟؟؟ .. وهل يولد المرء عالماً ؟؟
 

في الأخير أقول لك جزاك الله خير .. فأنتم قدة

 

اعتذر ان كان ردي جارح بالنسبة الك، لان بصراحة ردك كان استفزازي جدا بالنسبة لي

لان خلال 12 سنة قضيتها في معظم لغات البرمجة لم اسمع عن كود تكون له افضلية عن غيره لانه يوضع برأس الصفحة

او في ( Module ) او دوال اثنان يختلفان في اسماء البراميترات لكن تبقى لهما نفس الوظيفة فقط الاختلاف بالمسميات.

 

اقتباس

الجديد أن الكود أستاذي الغالي صالح حمادي كما قال أنك تظع دالة  Function في مديول .. والكود الذي اعطيتك ياخي .. يوضع في راس صفحة الفجول للنموذج الحالي وليس في مديول

 كما أن استدعاء ملف الصوت واضح الاختلاف

 

ان وضعت الكود في ( Module ) او في رأس الصفحة او في نهاية الصفحة.. سيعمل لانك تتعامل مع winAPI والذي يحدد ذلك طبيعة الدالة ( Private ) او ( Public ).

اما القيمة ( Boolean ) لكي ترجعلك قيم منطقية في حال تشغيل الصوت أو لا.

 

  • Like 2
قام بنشر
5 دقائق مضت, SEMO.Pa3x said:

اعتذر ان كان ردي جارح بالنسبة الك

أعتذارك مقبول أخي

11 دقائق مضت, SEMO.Pa3x said:

ان وضعت الكود في ( Module ) او في رأس الصفحة او في نهاية الصفحة.. سيعمل لانك تتعامل مع winAPI والذي يحدد ذلك طبيعة الدالة ( Private ) او ( Public ).

اما القيمة ( Boolean ) لكي ترجعلك قيم منطقية في حال تشغيل الصوت أو لا.

وشكرا على التذكير والتنبية لهذه المعلومة 

 

  • Like 1
  • Confused 1
قام بنشر
32 دقائق مضت, jjafferr said:

السلام عليكم 🙂

 

متابع دردشة الشباب ، في موضوع شيّق 🙂

وعليكم السلام 

أهلاً وسهلاً بأستاذنا الكبير .. والغالي في نفوسنا .. ما أحلى الدردشة عنما تكون بيننا

 

  • Thanks 1
قام بنشر
3 ساعات مضت, qathi said:

أعتذارك مقبول أخي

وشكرا على التذكير والتنبية لهذه المعلومة 

 

شكرا لسعة صدرك واعتذر منك مرة اخرى.

  • Like 2
قام بنشر
3 ساعات مضت, SEMO.Pa3x said:

شكرا لسعة صدرك واعتذر منك مرة اخرى.

 

6 ساعات مضت, qathi said:

أعتذارك مقبول أخي

وشكرا على التذكير والتنبية لهذه المعلومة

برافو عليكم شباب هكذا تكون الأخوة و حسن المعاملة

  • Like 1
قام بنشر

بعد اذن اخوانى واحبائى الكرام
اولا لى تعقيب صغير من وجهة نظرى المتواضعة
ليس معنى ان يطرح احد الاخوة او احد الاساتذة الافاضل شئ ان الكل يعلمه او العكس
وليس معنى ان يتم طرح النتيجة باسلوب مخلف فى الرد انهما متشابهين او مختلفين او ان لاحدهما افضلية

كل الطرق تؤدى الى رومها 

ثم لكل شيخ طريقته 
ولكل معلم اسلوبه

ولكل مبرمج او مصمم خياله وافكارة المختلفه عن الاخر فى طريقة تناولة للكود ومعالجته حسب خياله وافكاره طبقا لمتطلباته

وهنا طريقة انا استخدمتها نفس النتيجه لكن الاسلوب فى التناول للاكواد محتلف

كل الشكر لاساتذتنا الكرام
- الاستاذ @SEMO.Pa3x :fff:

- الاستاذ @صالح حمادي :fff:

-الاستاذ @خالد سيسكو :fff:

-الاستاذ @qathi :fff:

api play sound.rar

  • Like 2
قام بنشر

طريقة اخرى لتشغيل الصوت بدون winAPI

 

Call Shell("C:\windows\Sndrec32.exe /play ""C:\My Documents\alarm2.wav"" /close ", 0)

 

يتم تحديد مكان الصوت واسمه داخل الجهاز كما هو مبين في هذا المثال
"C:\My Documents\alarm2.wav"

مكان الصوت في المثال هذا هو
C:\My Documents

اسم الصوت في المثال
alarm2.wav

نوع الصوت
wav

 

للأمانة منقول من الاخ فهد الدوسري

  • Like 2
قام بنشر (معدل)
الان, SEMO.Pa3x said:

طريقة اخرى لتشغيل الصوت بدون winAPI

 


Call Shell("C:\windows\Sndrec32.exe /play ""C:\My Documents\alarm2.wav"" /close ", 0)

 

يتم تحديد مكان الصوت واسمه داخل الجهاز كما هو مبين في هذا المثال
"C:\My Documents\alarm2.wav"

مكان الصوت في المثال هذا هو
C:\My Documents

اسم الصوت في المثال
alarm2.wav

نوع الصوت
wav

 

للأمانة منقول من الاخ فهد الدوسري

انا احبذ وافضل تشغيل الصوت بالـ winAPI :yes: u  وهذا من وجهة نظرى انا التى افضلها

شكرا على المجهود الرائع فى الطرح المميز استاذ @SEMO.Pa3x :fff::signthankspin:

تم تعديل بواسطه ابا جودى
قام بنشر
5 دقائق مضت, ابا جودى said:

انا احبذ وافضل تشغيل الصوت بالـ winAPI :yes: u  وهذا من وجهة نظرى انا التى افضلها

شكرا على المجهود الرائع فى الطرح المميز استاذ @SEMO.Pa3x :fff::signthankspin:

 

اكيد وانا ايضا افضل الـ winAPI لانها الاسرع تنفيذا بالذاكرة.

  • Haha 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • اضف...

Important Information