سؤال

في ماكرو Visual Studio 6 أردت تشغيل برنامج خارجي ، حيث كتبت:

shell("p4 open " + ActiveDocument.FullName)

الذي أعطاني عدم تطابق نوع خطأ وقت التشغيل.ما انتهى الأمر إلى نوع هذا:

Dim wshShell
Set wshShell = CreateObject("WScript.Shell")
strResult = wshShell.Run("p4 open " + ActiveDocument.FullName)

ما الذي يجري هنا ؟ هذا هراء من الضروري حقا أو هل فاتني شيء ؟

هل كانت مفيدة؟

المحلول

كما lassevk وأشار VBScript لا Visual Basic.

وأعتقد أن يبنى إلا في الكائن في VBScript هو WScript الكائن.

WScript.Echo "Hello, World!"

من مستندات

WScript الكائن الكائن الجذر من Windows Script Host كائن نموذج التسلسل الهرمي.فإنه لا يحتاج إلى أن إنشاء مثيل من قبل الاحتجاج خصائص و أساليب و هو دائما متاحة من أي ملف البرنامج النصي.

شيء آخر يجب إنشاء طريق CreateObject الاتصال.بعض من هذه الكائنات المدرجة هنا.

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

التحذير واحد ، هو أن RegExp هو نوع من بنيت في أنه يمكنك إنشاء مثيل كائن RegExp مثل ذلك في VBScript:

Dim r as New RegExp

نصائح أخرى

VBScript ليس Visual Basic.

تعطي هذه المحاولة:

Shell "p4 open" & ActiveDocument.FullName

VB6 يستخدم & لسلسلة السلاسل بدلا من + و سوف تحتاج إلى تأكد من أن اسم الملف هو المغطى في الاقتباس في حالة المساحات.انها محاولة من هذا القبيل:

Shell "p4 open """ & ActiveDocument.FullName & """"
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top