سؤال

ما أود القيام به هو هذا:

<Property Id="LICENSEKEYPATH">
      REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE
      <DirectorySearch Id="ProgramDataSearch" AssignToProperty="yes" Depth="4" Path="[#ProductDirInAppData]">
        <FileSearch Id="LicenseFileSearch" Name="lic-conf.enp"/>
      </DirectorySearch>
</Property>

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

وهكذا، كيف يمكنني البحث عن ملف أو تعيين قيمة الممتلكات فقط خلال إلغاء؟

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

المحلول

ويمكنك التحكم في تحديد خاصية باستخدام عنصر SetProperty. وهذا هو مجرد اختصار لتسجيل الإجراء المخصص. يمكنك التحكم عند تنفيذ SetProperty باستخدام Conditoin في العنصر النص.

وأما بالنسبة AppSearch (عناصر XxxSearch)، يمكنك إضافة شرط مثل واحد أعلاه إلى العنصر AppSearch بحيث يتم تشغيله فقط خلال إلغاء التثبيت. لاحظ أن تكييف العنصر AppSearch سوف تؤثر على جميع العناصر XxxSearch. حتى إذا كنت في حاجة الى البحث عن العمل أثناء تثبيت وبحث آخر فقط خلال إلغاء التثبيت، لم يكن ذلك ممكنا.

وPS: الشرط تريد سوف ننظر شيئا مثل:

وInstalled AND REMOVE="ALL"

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