私はすでに関連する質問をしましたが、悲しいことに、答えは正しいものの、実際には私の問題を解決しませんでした.
ManagementClass/ManagementObject WMI API を使用しています (DirectoryEntry API よりもリモート管理の処理に優れているため)。既存のスクリプト マップを完全に削除したい
一般的な文字列形式のソリューションを使用すると、VBS では機能するように見えますが、ManagementClass API では機能しません。だから、スクリプトマップオブジェクトの正しい配列を作成する何かを書こうとしてきました。
foreach (var extension in extensions) {
var scriptMap = scriptMapClass.CreateInstance();
SetWmiProperty(scriptMap, "ScriptMap.Extensions", "." + extension);
残念ながら、関数 SetWmiProperty を実装することはできないようです。私が次のことを試みると
wmiObject.Properties.Add(propertyName, CimType.SInt32);
「オブジェクトの現在の状態のため、操作は有効ではありません。」というメッセージが表示されます。一方、プロパティを設定しようとすると、プロパティが存在しないと言われます。scriptMap クラスには、既存のオブジェクトが表示するパス「ScriptMap」があります。
ManagementClass API を使用して ScriptMaps を操作する実用的なコードを持っている人はいますか?