2017-05-18 4 views
1

私は、同僚がソースファイルを右クリックしてSCCMアプリケーションとパッケージを作成できるようにする、 .MSI、.MST、.EXE & c。)Windowsエクスプローラで。C#SCCMアプリケーション:アプリケーションのデプロイメントの種類要件:[1つのオペレーティングシステム]

私は

設定オペレーティングシステムの要件アプリケーションのデプロイメントタイプで(例えば "の一つ... & C。")

を設定することはできませんよ。

私は Deployment Typeの要件として Global Conditionを添加する方法が含まれていた、「インスピレーション」のために非常に有用 sample C# applicationを使用している...しかし、私はにそのコードの要素を移調することができていない

DTにOS要件を追加するもの。

Powershellのスクリプトがジョブを実行するように見えましたが、PSの例を正しく転記できませんでしたinto C#

私が持っている具体的な問題は、(かなり複雑に見える)DesiredConfigurationManagement式をどのように構築するか分かりません。

ExpressionBaseGlobalSettingReferenceExpressionと私が何をすべきかを把握することはできませんRuleオブジェクト...そして、SCCM 2012 SDKのドキュメントとサンプルはまったくDesiredConfigurationManagementを明確にするために私を助けていないのがあります。

だから私の質問、その後:

1)私は展開の種類のためのOSの要件を設定するDesiredConfigurationManagementを使用しなければならないと仮定します。これは正しいです?または、WMIクエリ& cを使用してOS要件を追加する方が簡単ですか?

2)C#の構文を特に重視して、DCM Expressionビルディングの謎を解きほぐしてくれるウェブリソースを知っている人はいますか?

ありがとうございました。

+0

こんにちは、私はあなたがそれに多くの努力をしているので、この質問をupvoteする傾向があります。しかし、私はそれが現在の形では、あなたが多くの注目を受けることはありそうにないと思う。参照するために変更する必要があるものがいくつかあります:http://stackoverflow.com/help/how-to-ask ** 1)**要件に関する情報は無関係です。それを短くてシンプルに保つ。 ** 2)**正確な問題を特定する** 3)**あなたが試したことの例(最小限)とその結果は....私はこれが役立つことを願っています。 – Stefan

+0

こんにちはStefan、有益なフィードバックをいただきありがとうございます。私が言ったように: "最初の呼び出し元" ..! (または、最初の行の後に "Enter"を押すことは知らなかったでしょう!) ")(OK。コメントにはキャリッジリターンはありません!)私は、"あなたがコードを投稿する前に、 "_ビット。それはまさにコードの問題ではありません...一般的な無知!正確な問題は、C#アプリケーションのSCCMアプリケーションデプロイメントタイプにOS要件を追加する方法がわかりません。そして私は、失敗した試行の例を使ってその投稿を乱雑にしたくなかった。しかし、私が言ったように:フィードバックに感謝します。 –

+0

私のオリジナルの質問Stefanの編集をありがとう。あなたは今何を意味するか見ることができます! :) –

答えて

0

ここで私の質問に私の考えをまとめる行為だったかもしれません...しかし、私は最終的にPowershellからコードを転記することができました!

 CustomCollection<RuleExpression> oOperands = new CustomCollection<RuleExpression>(); 

     oOperands.Add(new RuleExpression("Windows/All_x64_Windows_7_Client")); 

     ExpressionOperator oOperator = ExpressionOperator.OneOf; 

     OperatingSystemExpression oOSExpression = new OperatingSystemExpression(oOperator, oOperands); 

     Annotation oAnnotation = new Annotation(); 

     oAnnotation.DisplayName = new LocalizableString("DisplayName", "Operating system One of (All Windows 7 (64-bit))", null); 

     NoncomplianceSeverity oNonComplianceSeverity = NoncomplianceSeverity.None; 

     Rule nextRule = new Rule("Rule_" + Guid.NewGuid().ToString("B").Replace("{", string.Empty).Replace("}", string.Empty), oNonComplianceSeverity, oAnnotation, oOSExpression); 

     thisDT.Requirements.Add(nextRule); 

ジョブを実行するように見えます!

関連する問題