سؤال

لعمل مخصص، أعرض على الاسم إلى xmlpreprocess.exe (أداة Codeplex)

والحجج إلى: / x: [SettingsFile] /I :" BudapTargetDirplweb.config "/ e: [jasionetton

من المفترض أن يكون SettingSfile قادما من صفحة نموذج مخصص، ويتمثل البيئة هي قيمة أحد أزرار الراديو الخاصة بي.

هل هناك أي طريقة للحصول على إعادة التوجيه للعمل؟ لا يخلق ملف .log. هل هناك أي طريقة أخرى لرؤية نتائج الإجراء المخصص؟ كيف يمكنني حتى أن أؤكد حتى لو هرب؟ ماذا لو كنت أرغب في معرفة ما تم إرساله بهاته إليه؟

تحديث 3: - لمزيد من السيناريوهات لما حاولت، انظر هنا:http://xmlpreprocess.codeplex.com/thread/view.aspx؟threadid=79454.

شكرا،

نيل

تحديث: لقد كتبت للتو VBScript Quickie للتحقق من موقعي.

dim fso, oFile 
set fso = Createobject("Scripting.FileSystemObject") 
set oFile = fso.CreateTextFile("VBScriptOut.txt") 

if WScript.Arguments.Count < 2 then 
   oFile.Writeline("Number of arguments was only = " & WScript.Arguments.Count)
else 
   oFile.WriteLine("SETTINGSFILE=" & WScript.Arguments.Item(0))   
   oFile.WriteLine("ENVIRONMENTBUTTON=" & WScript.Arguments.Item(1))
end if 

oFile.close

لم يتم إنشاء No vBScriptout.txt، لذلك لا أعتقد أنه قد ركض حتى (لذلك تخميني هو xmlpreprocess ليس قيد التشغيل أيضا).

لقد قمت بتضمين ملف Installerverification.vbs كإجراء مخصص ضمن "تثبيت". قمت بتعيين الحالة = صحيح في نافذة الخصائص. قمت بتعيين CustomActionData إلى: [SettingsFile] [EnventyButton

تحديث 2: لقد أدركت الآن حالة لا ينبغي أن تكون "صحيحة". أنا إما فارغه أو تعيينه إلى "غير مثبت".

أحصل على خطأ غير مفسر على xmlpreprocess، ولا يمكنني تشغيل VBScript. حاولت تشغيلها أيضا مع cscript64.exe.

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

المحلول

فقط موجه الأوامر (والأدوات الأخرى العرضية الأخرى) استخدم رمز أكبر من الرموز للإشارة إلى إعادة توجيه الإخراج. يتطلب Windows Installer API CreateProcess Win32 الذي لا يعالج هذا الرمز. وبالتالي فإن محاولتك لتسجيل النتائج لن تعمل. ربما يمكنك إعادة كتابة الأمر الخاص بك لتبدو cmd.exe /c XmlPreprocess.exe /x ... > [TARGETDIR]XmlPreprocess.log (قد تكون هناك حاجة لبعض الاقتباس الإضافي).

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

كما تقول في التحديث 2، لاحظ أن حالة True في الواقع يعني البحث عن ما إذا كانت خاصية الاسم True ويعرف. إذا كنت تريد شيئا صحيحا دائما، فاستخدم القيمة 1.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top