Click here to Skip to main content
15,888,527 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more: , +
I have a x64 dot net console application, to execute powershell cmdlets for Failoverclusters module.
I've compiled application with .Net 4.0.
Here DotNet4.5 is already installed. I tried to execute this application on windows server 2012. FailoverClusters module loaded successfully on Windows Server 2012 and all cmdlets executed successfully
Now I installed dotnet 4.5 on Windows Server 2008 R2, and tried to execute application. It does not execute any of failovercluster cmdlet (FOC is configured). It executes default cmdlets like Get-ChilItem, Get-Process.
Below is code i've used in my program
C++
Runspace rSpace;
InitialSessionState SessionState;
RunspaceInvoke invoker;
string[] strImportModules = new[] { "FailoverClusters" };

SessionState = InitialSessionState.CreateDefault();
SessionState.ImportPSModule(strImportModules);
rSpace = RunspaceFactory.CreateRunspace(SessionState);
rSpace.Open();
invoker = new RunspaceInvoke(rSpace);

Collection<PSObject> results = m_invoker.Invoke(script, null, out m_errors);


//Here script is Failovercluster cmdlet can be like "Get-Cluster", "Get-clusterNode", "Get-clusterNode"
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900