الحالة
مغلق و غير مفتوح للمزيد من الردود.

hatem-ghouthi

زيزوومي VIP
نجم الشهر
إنضم
6 مارس 2015
المشاركات
1,117
مستوى التفاعل
1,533
النقاط
1,220
غير متصل
هذا الامر هو قراءة النصوص الانجليزية او الفرنسية على شاشة ال cmd
هذا الامر لا يدعم النصوص العربية



اكتب هذا الامر
كود:
type "filepathe"
في cmd


حيث filepathe هو مسار الملف

واظغط انتري


قراءة بمعنى عرض النصوص . وليس قراءته كلاميا اي بالصوت
 

توقيع : hatem-ghouthi
السلام عليكم ورحمة الله وبركاته وشكرا على الموضوع

قراءة بمعنى عرض النصوص . وليس قراءته كلاميا اي بالصوت

فلنجعله يتكلم إذن:

ضع هذا الكود البسيط فى ملف يحمل الإمتداد .cmd أو .bat ثم نفذه كما نفذت الأمر type

كود:
@echo off
if exist "%~1" (
  powershell -nop -c "(new-Object -com sapi.spvoice).speak((gc '%~1'))"
) else echo SYNTAX: %0 "filePath"
 
توقيع : walid2mi
السلام عليكم ورحمة الله وبركاته وشكرا على الموضوع



فلنجعله يتكلم إذن:

ضع هذا الكود البسيط فى ملف يحمل الإمتداد .cmd أو .bat ثم نفذه كما نفذت الأمر type

كود:
@echo off
if exist "%~1" (
  powershell -nop -c "(new-Object -com sapi.spvoice).speak((gc '%~1'))"
) else echo SYNTAX: %0 "filePath"

بارك الله فيك اخي .

ولكن هلا اعطيتنا مثالا كاملا // البرنامج مع الملف النصي ---- لان الامر لم يصلح معي
 
توقيع : hatem-ghouthi
السلام عليكم

إذا كنت تشتغل على XP فلا أضن أن الكود سيشتغل عندك إلا إذا سطبت من قبل .NET 3.5
الكود يشتغل من win7 لما فوق ولكن إذا أردت أن تشغله عندك بدون Powershell فيمكنك إستعمال هذا الكود

كود:
<!-- :
@echo off
if exist "%~1" (
cscript //nologo "%~f0?.wsf" "%~1"
) else echo SYNTAX %0 "filePath"
exit /b
-->
<job>
 <script language="VBScript">
  Dim sp  : Set sp =CreateObject("sapi.spvoice")
  Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")
  Dim txt : txt = fso.OpenTextFile(WScript.Arguments(0)).ReadAll
  sp.Speak txt
 </script>
</job>

إحفظه بإمتداد .cmd أو .bat ثم نفذه كما نفذت الأمر type

مثال لنفترض أنك حفضته بإسم hatem.bat وتريد قراءة ملف c:\temp\test.txt ما عليك إلا أن تكتب فى موجه الأوامر:
كود:
hatem.bat c:\temp\test.txt
 
توقيع : walid2mi
السلام عليكم

إذا كنت تشتغل على XP فلا أضن أن الكود سيشتغل عندك إلا إذا سطبت من قبل .NET 3.5
الكود يشتغل من win7 لما فوق ولكن إذا أردت أن تشغله عندك بدون Powershell فيمكنك إستعمال هذا الكود

كود:
<!-- :
@echo off
if exist "%~1" (
cscript //nologo "%~f0?.wsf" "%~1"
) else echo SYNTAX %0 "filePath"
exit /b
-->
<job>
<script language="VBScript">
  Dim sp  : Set sp =CreateObject("sapi.spvoice")
  Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")
  Dim txt : txt = fso.OpenTextFile(WScript.Arguments(0)).ReadAll
  sp.Speak txt
</script>
</job>

إحفظه بإمتداد .cmd أو .bat ثم نفذه كما نفذت الأمر type

مثال لنفترض أنك حفضته بإسم hatem.bat وتريد قراءة ملف c:\temp\test.txt ما عليك إلا أن تكتب فى موجه الأوامر:
كود:
hatem.bat c:\temp\test.txt


عبقري والله . . انا مسطب net3.5 والامر اشتغل معي . بارك الله فيك . اعترف بانك سيدها .
 
توقيع : hatem-ghouthi
ولكن انا اتتني فكرة بجعل البرنامج اكثر تطورا قليلا . حيث نستبدل دالة set /p بدالة تشابهها . واظن انها
كود:
inputbox(" ")

. حيث يتم ادخال مسار الملف مباشرة عبر نافذة الادخال ..
اظن ان الفكرة سهلة ولكن التطبيق هو ما يؤرقني . فانا لم اتعلم لغة vbscript بعد
 
توقيع : hatem-ghouthi
جائتني فكرة بجعل البرنامج اكثر فاعلية وهي باضافته لقائمة sendto
بحيث ان اردت ان استمع لملف نصي ماعلي الا ان انقر على الملف ثم ارسال الى برنامج القراءة ..

انها ناجحة جدا . بارك الله فيك اخي . وجزاك الله خيرا . اريد حقا تعلم كل اوامر لغة vbscript لانها جميلة جدا اذا كنت تملك كتابا او طريقة لتعلمها . افدنا بها ..


11188234_1558217494445579_5885715605439192600_n.jpg
 
توقيع : hatem-ghouthi
بارك الله فيكم اخى الكريم
على المجهود والمتابعة
تحياتى
 
السلام عليكم

vbscript ليست لغة للمستقبل ولذلك توقف دعمها ولن تكون هناك نسخ جديدة منها وأضن أنها رويدا رويدا ستتلاشى. إذن من الأفضل أن تتوجه لبورشال إن كنت تريد تعلم أداة قوية و مدعومة
 
توقيع : walid2mi
بارك الله فيكم اخى الكريم
على المجهود والمتابعة
تحياتى[/QUOTE
مشكور اخي على مرورك العطر

السلام عليكم

vbscript ليست لغة للمستقبل ولذلك توقف دعمها ولن تكون هناك نسخ جديدة منها وأضن أنها رويدا رويدا ستتلاشى. إذن من الأفضل أن تتوجه لبورشال إن كنت تريد تعلم أداة قوية و مدعومة[/QUOTE


اعرف ذلك اخي . ولكن لكي اكون مبرمجا جيدا على تعلم لغات البرمجة القديمة لأستطيع ان ابدع في الجديدة . ولآتي بافكار جديدة هذا قصدي من تعلم مثلها . اما البور شيل فارى انها جيدة جيدا فانا وضعتها في قائمة اللغات البرمجية التي اطمح لتعلمها . .
 
توقيع : hatem-ghouthi
بارك الله فيكم اخى الكريم
على المجهود المميز
تحياتى
 
توقيع : كاسر
ولكن لكي اكون مبرمجا جيدا على تعلم لغات البرمجة القديمة لأستطيع ان ابدع في الجديدة.


هذا يمكن أن يكون صحيحا فى بعض الأحيان ولكن فى أحيان أخرى يكون غير صحيح خصوصا مع vbscript فحتى وإن تعلمتها فسيكون مقدار الفائدة منها محدودا ومع طول الزمن منعدما وذلك لعدة أسباب:
* إنها لغة تستعمل بالأساس تقنية com القديمة و المرهقة
* أن دعمها توقف فلن تكون لها نسخ جديدة
* إنها لغة تقنية و غير أنيقة على عكس اللغات الجديدة فالمتخصص فى vbscript سوف يكون إنتقاله للغات الجديدة أكثر صعوبة ممن كان يتعامل مع لغة أخرى سابقا
* أنها غير تفاعلية ك cmd

و مع هذا فأقول أن vbscript هي لغة قوية ولكن قوة اللغة لا تعنى بقاءها فلغات البرمجة كالكائنات الحية "لا تبقى إلا التى تحسن التأقلم مع عصرها"

بالنهاية الإختيار يبقى لك وأنت أعلم بإحتياجاتك و بالتوفيق
 
توقيع : walid2mi
بارك الله فيكم اخى الكريم
على المجهود المميز
تحياتى

اهلا بك اخي .
هذا يمكن أن يكون صحيحا فى بعض الأحيان ولكن فى أحيان أخرى يكون غير صحيح خصوصا مع vbscript فحتى وإن تعلمتها فسيكون مقدار الفائدة منها محدودا ومع طول الزمن منعدما وذلك لعدة أسباب:
* إنها لغة تستعمل بالأساس تقنية com القديمة و المرهقة
* أن دعمها توقف فلن تكون لها نسخ جديدة
* إنها لغة تقنية و غير أنيقة على عكس اللغات الجديدة فالمتخصص فى vbscript سوف يكون إنتقاله للغات الجديدة أكثر صعوبة ممن كان يتعامل مع لغة أخرى سابقا
* أنها غير تفاعلية ك cmd

و مع هذا فأقول أن vbscript هي لغة قوية ولكن قوة اللغة لا تعنى بقاءها فلغات البرمجة كالكائنات الحية "لا تبقى إلا التى تحسن التأقلم مع عصرها"

بالنهاية الإختيار يبقى لك وأنت أعلم بإحتياجاتك و بالتوفيق


مشكور اخي . وانت محق ورايك على العين والراس
 
توقيع : hatem-ghouthi
بارك الله فيك اخى الكريم
 
الحالة
مغلق و غير مفتوح للمزيد من الردود.
عودة
أعلى