2010-01-14 9 views
14

हमारे पास एक पावरहेल बिल्ड स्क्रिप्ट है जो मुझे अन्य स्क्रिप्ट्स पर कॉल करती है जो मुझे विंडोज 7 64 बिट के तहत परेशानी दे रही हैं। यह एक्सपी के तहत ठीक काम करता है। मैंने RemoteSigned पर सेट-निष्पादन नीति को चलाया है (और बाईपास और अप्रतिबंधित के साथ भी कोशिश की है)। मैं त्रुटि संदेश से कमांड लाइन खींच सकता हूं और इसे स्वयं चला सकता हूं और यह सब ठीक चलाता है।विंडोज 7 के तहत एमएसबिल्ड कॉलिंग पावरहेल स्क्रिप्ट साइनिंग त्रुटि

बिल्ड त्रुटियां यहां भयानक लगती हैं; लेकिन मैं उन्हें पूर्णता के लिए वैसे भी शामिल कर रहा हूं।


Project "C:\dev7\Source\DashPortal\DashboardGenerator\DashboardGenerator.csproj" (2) is building "C:\dev7\Source\DashPo 
rtal\DashboardController\DashboardController.csproj" (15) on node 0 (default targets). 
    File C:\Users\pmckinney.NA\Documents\WindowsPowerShell\profile.ps1 cannot be lo 
    aded because the execution of scripts is disabled on this system. Please see "g 
    et-help about_signing" for more details. 
    At line:1 char:2 
    + . <<<< 'C:\Users\pmckinney.NA\Documents\WindowsPowerShell\profile.ps1' 
     + CategoryInfo   : NotSpecified: (:) [], PSSecurityException 
     + FullyQualifiedErrorId : RuntimeException 

    File C:\dev7\Source\DashPortal\DashboardController\..\..\..\Build\createReportI 
    nstallScript.ps1 cannot be loaded because the execution of scripts is disabled 
    on this system. Please see "get-help about_signing" for more details. 
    At line:1 char:87 
    + C:\dev7\Source\DashPortal\DashboardController\..\..\..\Build\createReportInst 
    allScript <<<< -t C:\dev7\Source\DashPortal\DashboardController\..\..\..\Sourc 
    e\DashPortal\DashboardReports\ReportSetupScriptTemplate.sql -l C:\dev7\Source\D 
    ashPortal\DashboardController\..\..\..\Source\DashPortal\DashboardReports\Repor 
    tSetupReportList.xml -c C:\dev7\Source\DashPortal\DashboardController\..\..\..\ 
    Source\DashPortal\Config 
     + CategoryInfo   : NotSpecified: (:) [], PSSecurityException 
     + FullyQualifiedErrorId : RuntimeException 

C:\dev7\Source\DashPortal\DashboardController\DashboardController.csproj(265,5): error MSB3073: The command "powershell 
C:\dev7\Source\DashPortal\DashboardController\..\..\..\Build\createReportInstallScript -t C:\dev7\Source\DashPortal\Da 
shboardController\..\..\..\Source\DashPortal\DashboardReports\ReportSetupScriptTemplate.sql -l C:\dev7\Source\DashPorta 
l\DashboardController\..\..\..\Source\DashPortal\DashboardReports\ReportSetupReportList.xml -c C:\dev7\Source\DashPorta 
l\DashboardController\..\..\..\Source\DashPortal\Config" exited with code 1. 
+0

किसी MSBuild स्क्रिप्ट कार्य के उपयोग को अधिकतम करने के लिए, उन्हें साइन इन करने के लिए प्रमाणपत्र प्राप्त करने के लायक हो सकता है, इससे प्रत्येक बिल्ड सिस्टम पर गैर-हस्ताक्षरित स्क्रिप्ट सक्षम करने की आवश्यकता से बचने से बचा जाएगा। – Richard

उत्तर

23

बस अनुमान लगा: आप अपने PowerShell में Set-ExecutionPolicy चला और निर्माण PowerShell चलाता है?

शायद दोनों गोले में Get-ExcutionPolicy आज़माएं।

+0

यह बिल्कुल ठीक है! बहुत धन्यवाद! –

+0

खुशी है कि मैं मदद कर सकता हूं ... x64/x86 में भाग गया खुद को कुछ बार – Filburt

0

संपादित करें: उफ़, मैं देख रहा हूँ आप पहले से ही स्क्रिप्ट सक्षम होना चाहिए। यह संभवतः संदर्भ के साथ कुछ करने के लिए है जिसके तहत एमएसबिल्ड चल रहा है। क्या आप एमएसबिल्ड को किसी तरह के स्थानीय सेवा खाते के रूप में चला रहे हैं?

संपादित 2: यह स्पष्ट है कि त्रुटि संदेश भ्रामक है। कुछ और चल रहा है और निष्पादन नीति त्रुटि फेंक दी जा रही है लेकिन अपेक्षित कारण के लिए नहीं। शायद अलग करने के तरीके के रूप में, एक और एमएसबिल्ड कार्य बनाने का प्रयास करें जो एक ही पंक्ति को चलाता है लेकिन ऊपर /../../../ बोनान्ज़ा के बजाय छोटे, हार्डकोडेड पथों के साथ?

+0

मुझे अभी-अभी रिमोटसाइन करने के लिए सेट-एक्जिक्यूशन पॉलिसी मिली है। मैंने बिना किसी किस्मत के अनियंत्रित और बाईपास की भी कोशिश की है। –

+0

हाँ मेरा बुरा, संपादित उत्तर। रिकॉर्ड के लिए मुझे नहीं पता कि क्या हो रहा है :) –

+0

वास्तव में, आप वास्तव में करीब थे। Filburt से जवाब देखें। –

संबंधित मुद्दे