البرمجة النصية لبناء Visual Studio ونشر Clickonce وDotfuscator وMage

StackOverflow https://stackoverflow.com/questions/617366

سؤال

تتم عملية إصدار طلبي إلى العميل وفقًا للعنوان

  • يبني
  • انقر مرة واحدة على النشر
  • تشويش الملف التنفيذي الرئيسي باستخدام Dotfuscator
  • توقيع ملفات البيان و.application مع mage
  • الرمز البريدي للتسليم

أرغب في العمل على برنامج مفتوح المصدر لأتمتة هذا لأنه يستخدم الكثير من الوقت في كل مرة يحتاج فيها العميل إلى إصدار.أعتقد أن طلب الحل أمر كثير جدًا؛) فما هو التنسيق المثالي؟البرنامج النصي الدفعي، تطبيق C#؟

هل أي شخص على علم بالحل الحالي لهذه العملية أو على استعداد للتعاون في حل واحد؟

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

المحلول

لذا أعتقد أنك لا تفكر في استخدام MSBuild؟

لأن ذلك يأتي أيضًا مجانًا مع .net SDK.مشاريع Visual Studio الخاصة بك هي بالفعل ملفات مشروع MSBuild، لذا يمكنك استخدامها وتعديلها لإنشاء بنية متكاملة كاملة.

لإنشاء نشر ClickOnce الخاص بك، يمكنك بعد ذلك استخدام مهام MSBuild التالية:

  • GenerateApplicationManifest
  • GenerateDeploymentManifest
  • تنفيذي
  • ملف التوقيع

بسبب بعض المشكلات، أحتاج أيضًا إلى تشغيل mage بعد هذه المشكلات، على سبيل المثال، لتحديث البيان والتوقيع عليه، أستخدم مهمة Exec لهذا:

<!-- Correct the codebase property pointing to the application manifest file -->
<Exec 
  Command="&quot;$(SdkPath)bin\mage&quot; -Update &quot;$(DeploymentManifest)&quot; -AppManifest &quot;$(ApplicationManifest)&quot;" 
  WorkingDirectory="$(PublishDir)" />

<!-- Signing the Deployment manifest -->
<Exec 
  Command="&quot;$(SdkPath)bin\mage&quot; -Sign &quot;$(DeploymentManifest)&quot; -CertFile &quot;$(SolutionRoot)\$(Branch)\Source\esamba.pfx&quot; -Password esamba" 
  WorkingDirectory="$(PublishDir)" />

آمل أن يكون هذا يساعدك.

نصائح أخرى

لماذا لا تستخدم أداة البناء مثل نانت وهو قابل للتوسيع مع المهام المخصصة حسب الحاجة.

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

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