পাওয়ারশেলের মাধ্যমে আইসিএস


0

পাওয়ারশেলের মাধ্যমে আইসিএস সক্ষম করতে, আমি নিম্নলিখিতটি ব্যবহার করেছি:

# Register the HNetCfg library (once)
regsvr32 hnetcfg.dll

# Create a NetSharingManager object
$m = New-Object -ComObject HNetCfg.HNetShare

# List connections
$m.EnumEveryConnection |% { $m.NetConnectionProps.Invoke($_) }

# Find connection
$c = $m.EnumEveryConnection |? { $m.NetConnectionProps.Invoke($_).Name -eq "Ethernet" }

# Get sharing configuration
$config = $m.INetSharingConfigurationForINetConnection.Invoke($c)

# See if sharing is enabled
Write-Output $config.SharingEnabled

# See the role of connection in sharing
# 0 - public, 1 - private
# Only meaningful if SharingEnabled is True
Write-Output $config.SharingType

# Enable sharing (0 - public, 1 - private)
$config.EnableSharing(0)

# Disable sharing
$config.DisableSharing() 

তবে ত্রুটির মুখোমুখি হওয়া:

Exception calling "Invoke" with "1" argument(s): "Cannot process argument because the value of argument "arguments" is
null. Change the value of argument "arguments" to a non-null value."
At C:\a.ps1:14 char:62
+ $config = $m.INetSharingConfigurationForINetConnection.Invoke <<<< ($c)
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException

You cannot call a method on a null-valued expression.
At C:\a.ps1:25 char:22
+ $config.EnableSharing <<<< (0)
    + CategoryInfo          : InvalidOperation: (EnableSharing:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

You cannot call a method on a null-valued expression.
At C:\a.ps1:28 char:23
+ $config.DisableSharing <<<< ()
    + CategoryInfo          : InvalidOperation: (DisableSharing:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

এই পরিস্থিতি কীভাবে কাটিয়ে উঠবেন?

উত্তর:


0

এটি $c14 নং লাইনে এটি ব্যবহার করার চেষ্টা করার সময় আপনাকে নুল (সংজ্ঞায়িত নয়) বলা হচ্ছে।

এটি $configজনবহুল হওয়ার কারণ নয় (তাই এটি অপরিবর্তিত / নাল থেকে যায়), দ্বিতীয় এবং তৃতীয় ত্রুটির দিকে পরিচালিত করে।

এটি ঠিক করতে, কেন $cজনবহুল হচ্ছে না তা নির্ধারণ করুন ।


নেটকনেকশনপ্রপস.ভুক্ত করুন ($ _) আসলে, পিসি ডাব্লুএলএএন-এর সাথে সংযুক্ত, এবং ইথারনেট নয়। এটা কি সমস্যা ???
আনমল শর্মা

এটা সমস্যা হতে পারে। Break c = $ m.EnumEveryConnection | এ ব্রেকপয়েন্ট লাগানোর চেষ্টা করুন? $ $ m.NetConnicationProps.Invoke ($ _)। নাম "ehernet "} লাইন, এবং সঠিকভাবে ভরাট হয়েছে কিনা তা পরীক্ষা করতে কনসোলে $ C আউটপুট প্রিন্ট করুন।
স্মিরপিজপ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.