Get the current runspace of a powershell instance (Follow up to a previous question - Link in question)

So this is a follow up question to a question I posted last week
If
PS {some Path}>C: = PS C:\> then why not HKLM: = PS HKLM:\>
So here is where I am with the question above
After running pretty much all of the powershell related DLL files through redgate's .NET Reflector I fiinally discovered where those "C:" = "Set-Location C:" were being created.
namespace System.Management.Automation.Runspaces
public class InitialSessionState
// More here but cut them out to save space in this post
internal static SessionStateFunctionEntry[] BuiltInFunctions = new SessionStateFunctionEntry[]
new SessionStateFunctionEntry("prompt", DefaultPromptString),
// More here but cut them out to save space in this post
new SessionStateFunctionEntry("A:", "Set-Location A:"),
new SessionStateFunctionEntry("B:", "Set-Location B:"),
new SessionStateFunctionEntry("C:", "Set-Location C:"),
new SessionStateFunctionEntry("D:", "Set-Location D:"),
new SessionStateFunctionEntry("E:", "Set-Location E:"),
new SessionStateFunctionEntry("F:", "Set-Location F:"),
new SessionStateFunctionEntry("G:", "Set-Location G:"),
new SessionStateFunctionEntry("H:", "Set-Location H:"),
new SessionStateFunctionEntry("I:", "Set-Location I:"),
new SessionStateFunctionEntry("J:", "Set-Location J:"),
new SessionStateFunctionEntry("K:", "Set-Location K:"),
new SessionStateFunctionEntry("L:", "Set-Location L:"),
new SessionStateFunctionEntry("M:", "Set-Location M:"),
new SessionStateFunctionEntry("N:", "Set-Location N:"),
new SessionStateFunctionEntry("O:", "Set-Location O:"),
new SessionStateFunctionEntry("P:", "Set-Location P:"),
new SessionStateFunctionEntry("Q:", "Set-Location Q:"),
new SessionStateFunctionEntry("R:", "Set-Location R:"),
new SessionStateFunctionEntry("S:", "Set-Location S:"),
new SessionStateFunctionEntry("T:", "Set-Location T:"),
new SessionStateFunctionEntry("U:", "Set-Location U:"),
new SessionStateFunctionEntry("V:", "Set-Location V:"),
new SessionStateFunctionEntry("W:", "Set-Location W:"),
new SessionStateFunctionEntry("X:", "Set-Location X:"),
new SessionStateFunctionEntry("Y:", "Set-Location Y:"),
new SessionStateFunctionEntry("Z:", "Set-Location Z:"),
new SessionStateFunctionEntry("cd..", "Set-Location .."),
new SessionStateFunctionEntry(@"cd\", @"Set-Location \"),
Then further down in the class it is called 
public static InitialSessionState CreateDefault()
InitialSessionState state = new InitialSessionState();
state.Variables.Add(BuiltInVariables);
state.Commands.Add(new SessionStateApplicationEntry("*"));
state.Commands.Add(new SessionStateScriptEntry("*"));
state.Commands.Add(BuiltInFunctions);
state.Commands.Add(BuiltInAliases);
foreach (PSSnapInInfo info in PSSnapInReader.ReadEnginePSSnapIns())
try
PSSnapInException exception;
state.ImportPSSnapIn(info, out exception);
catch (PSSnapInException exception2)
throw exception2;
state.LanguageMode = PSLanguageMode.FullLanguage;
state.AuthorizationManager = new PSAuthorizationManager(Utils.DefaultPowerShellShellID);
return state.Clone();
So the InitialSessionState class fills in these values.
My problem now is I cannot seem to find out how to get an attachment to the CURRENT either
InitialSessionState
Runspace
I can find plenty of forum posts and blogs about how to run powershell in c# but they ALL involve instantiating a NEW powershell runtime.
I can and have written
InitialSessionState iss = InitialSessionState.CreateDefault();
and I can step through the debugger and watch it fill in the functions but as soon as it finally gets to the powershell prompt all the functions are gone.
On another attempt I tried to create a runspace from the current host
thisRunspace = RunspaceFactory.CreateRunspace(this.Host);
where this is public class ConfluenceProvider : NavigationCmdletProvider
And the line of code above is called in 
        protected override System.Collections.ObjectModel.Collection<PSDriveInfo> InitializeDefaultDrives()
When I run the code and debug  the runspace created has a different InstanceId than what ultimately shows up in the powershell console if I do $Host.Runspace.InstanceId
This provider will ultimately be a part of a module with other cmdlets and functions but I would like to know how to attach to the actual runspace, sessionstate, WHATEVER will do the trick that the module is loaded into so I can add functions to it.
So if anyone has any clue or knows of other blogs, walkthroughs i could read through that covers this it would be a huge help.
Thanks again everyone
Quidquid latine dictum sit, altum videtur

Hi Tofubug,
Since I'm not familiar about C#, however, if want to run powershell script in C#, the script below may be helpful for you:
RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();
Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
runspace.Open();
RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);
Pipeline pipeline = runspace.CreatePipeline();
//Here's how you add a new script with arguments
Command myCommand = new Command(scriptfile);
CommandParameter testParam = new CommandParameter("key","value");
myCommand.Parameters.Add(testParam);
pipeline.Commands.Add(myCommand);
// Execute PowerShell script
results = pipeline.Invoke();
And these threads for your reference:
Execute PowerShell Script from C# with Commandline Arguments
How to run PowerShell scripts from C#
How do you set FullLanguage mode
for remote PowerShell from C#?
If I have any misunderstanding, please feel free to let me know.
Best Regards,
Anna Wang

Similar Messages

  • How to get the current user name of the host who is occupying a specific VM?

    I'm developing a winform app with c# code to manage Hyper-V. I need to remind someone if he/she would take a VM which has already been occupied by others.
    Is there any powershell cmd or WMI interface to get the current user of a specific VM?
    Thanks!

    Hiya,
    from cmd there are quser(Query user) and qwinsta(Query Session)
    which should give you that. Don't know how you can incoorperate that in C#, but that should give you something to work with :)
    https://technet.microsoft.com/en-us/library/cc785434.aspx
    https://technet.microsoft.com/en-us/library/cc788125.aspx

  • How to get the current date ? in the form of dd/mm/yyyy?

    Hi all,
    As getDate( ), getMonth( ), and getYear( ) is depricated, how to get the current date or System date, month and year ? please help ??
    Regards
    Ashvini

    HI,
    Than u for the reply. But i am getting one error.
    as u said, I tried to do so.........
    but, i am getting one error.
    code
    Calendar cald=(Calendar.getInstance.getTime());
    out.println(cald);
    error message
    validate$jsp.java:86: Attempt to reference method getInstance in class java.util.Calendar as an instance variable.
    Calendar cald=(Calendar.getInstance.getTime());
    ^
    1 error
         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:284)
    Pls help
    Regards,
    Ashvini

  • Getting the current time and comparing it to a time in the future

    Hello,
    I am seeing in my research some debate on the best way to get the time. I am reading that just using the Date class and calling getTime() is not the most reliable way to do things. Overall, I am trying to get the current time down to the millisecond. I then want to add 5 seconds to that time and then store that value. FInally, when the current time is greater or equal to this stored value, I want to continue on in my program. Can anyone point me in the right direction on how to calculate the time variable? Any help would be much appreciated. I am new to the JAVA world.
    Thanks,
    Tim

    To store the current time, simply use new java.util.Date(). Yes, there might be slight inconsistencies and it might not be the most accurate time possible, but without significant additional effort (perhaps a native O/S call or the use of another time library), you will not do much better. Calendar won't help in this instance either. The easiest way to get five seconds in the future is to do the following:
    Date now = new Date();
    Date future = new Date(now.getTime() + 5000);To store and retrieve the value, it depends on what you are doing. You can place it in the database via JDBC (BTW, if you trust the database timestamp more than Java's you can use something like Oracle's SYSDATE instead of Java's date in your SQL query). You can place it in the filesystem. You can store it in the user's session.
    - Saish

  • How to get the current class name in static method?

    Hi,
    I'd like to get the current class name in a static method. This class is intended to be extended. So I would expect that the subclass need not to override this method and at the runtime, the method can get the subclass name.
    getClass() doesn't work, because it is not a static method.
    I would suggest Java to make getClass() static. It makes sense.
    But in the mean time, does anybody give an idea to work around it?
    Thank you,
    Bill

    Why not create an instance in a static method and use getClass() of the instance?
    public class Test {
       public static Class getClassName() {
          return new Test().getClass();

  • Getting the current row in a datatable

    Hi,
    I am using datatable. How do I get the current row in the datatable
    and use it for my processing in the JSP page
    or I want to just output that value with out using any jsf tags.
    Examples
    <h:dataTable styleClass="dataTable" id="table1" border="0"                    value="#{myTrainingHandler.myMediaTraining}" var="dataIt">
    <h:column id="column1">
    <f:facet name="header">
    <h:outputText styleClass="outputText" value="Course Name"id="text1"></h:outputText>
    </f:facet>
    <!---------------------------------------------- how do I get the value of #{dataIt.name} and use it in the JSP way
    Reason: I just want to output the value. If I am using h:outputText then it inserts <span>... </span>
    or, I want to transfer that value to another another attribute in the session or something like that.
    ---------------------!>
    <h:outputText styleClass="outputText" id="text2" value="#{dataIt.name}"></h:outputText>
    </h:column>
    </h:dataTable>
    -Aswath

    It looks like good idea!Unfortunately this is just workaround. Indeed your
    suggestion is real JSF-feeling solution but due to the
    bug (or rather pure design of RI implementation???) it
    is dangerous.
    I had some doubt about is it bug or my incompetence.
    Unfortunately this seems is really bug.
    Hope this problem will be solved in the next releases.from blueprints catalog:
    Component bindings (e.g. <h:inputText binding="#{MyBean.lastNameComponent}" />) should always be stored in request scope since their value is no longer valid after a request has been processed anyway. The component tree is reconstituted during each incoming request, changing the physical instances these component bindings will point to.
    as you see there is really problem in using session backing bean with component binding
    so that means idea with parameter looks better now because we don't need to use table binding.
    Or probably we can define some kind of pattern like couple of beans with request scope and session scope.
    for example:
    Catalog - session scope
    CatalogView - request scope
    Catalog will keep session data and CatalogView will provide some presentation logic (including some stricly visual oriented data) and access to business methods of Catalog class.
    I will send you example by e-mail (on friday) if you not mind.
    >
    Thank you for your suggestion!
    Probably I will use your idea in my application.
    By the way I'm from Kiev also.Hello from Kiev :-)
    I have one suggestion.
    I'm working on JSF form that suppose to add, editand
    delete records from table.
    Also I wanna to use scrolling by page and sorting.
    I'm trying to make this form somehow clean and
    universal as much as possible.Seems I have same tasks for now.Great! I will send some code soon.
    And maybe we can discuss every aspect how to do good JSF based application including config oriented information and utilities classes.
    -how do you work with tables without primary keyI dont' have tables without primary key :)
    -how do you make pagination by universal wayWe need just make good component for that.
    We already started in this direction.

  • Get the current position within the PBEL Prozess

    Hi,
    In the BPELConsole I can see the the flow of every PBEL process
    instance and thus I see the current position within the process.
    How would you get the current position programatically, via SOAP e.g.?
    Kind regards,
    Martin

    Hi,
    there is a JAVA API provided by Oracle
    http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28986/toc.htm
    If you really need SOAP, you can build your own Java webservices with this API

  • Get the current space name

    hi,
    i am working on webcenter space application.i need to pass current space name to bean.how can i get the current space name??
    Regards
    Vinay Kumar

    No, that will not compile. You probably need to do:
    SpacesContext sc = SpacesContext.getCurrentInstance();
    String spaceName = sc.getCurrentSpaceName();
    Beware that the doc says "Return the SpacesContext instance for the request that is being processed by the current thread, if any."
    So the SpacesContext might be null.
    Jaap

  • How to get the current filename and & or path

    How can I get the current path or filename?
    I didn't really find any answers in the net. this.path or app.path were suggested but I couldn't get it to work.
    Thanks in advance for your answer!
    Livecycle Designer ES 8.2.1.3144.1.471865

    Hi,
    event.target.path.toString();  will give the full path including the filename.
    event.target.documentFileName.toString();  will give the filename only.
    Good luck,
    Niall

  • How to get the current path of my application in java ?

    how to get the current path of my application in java ?
    thanks

    To get the path where your application has been installed you have to do the following:
    have a class called "what_ever" in the folder.
    then you do a litte:
    String path=
    what_ever.class.getRessource("what_ever.class").toString()
    That get you a string like:
    file:/C:/Program Files/Cool_program/what_ever.class
    Then you process the result a little to remove anything you don't want:
    path=path.substring(path.indexOf('/')+1),path.lastIndexOf('/'))
    //Might be a little error here but you should find out //quickly if it's the case
    And here you go, you have a nice
    C:/Program Files/Cool_program
    which is the path to your application.
    Hooray

  • Oracle 11i release 2 error "Unable to get the current group"

    Hi oracle gurus,
         I have been trying to install oracle 11g rel 2 on HPUX 11.31 and i am getting the following error
    # more installActions2010-01-06_10-27-37AM.log
    oracle.install.ivw.db.driver.DBInstaller
    -scratchPath
    /u01/tmp/OraInstall2010-01-06_10-27-37AM
    -sourceLoc
    /u01/install/database/install/../stage/products.xml
    -sourceType
    network
    -timestamp
    2010-01-06_10-27-37AM
    INFO: Loading data from: jar:file:/u01/tmp/OraInstall2010-01-06_10-27-37AM/ext/jlib/installcommons_1.0.0b.jar!/oracle/install/driver/oui/resource/ConfigComma
    ndMappings.xml
    INFO: Loading beanstore from jar:file:/u01/tmp/OraInstall2010-01-06_10-27-37AM/ext/jlib/installcommons_1.0.0b.jar!/oracle/install/driver/oui/resource/ConfigC
    ommandMappings.xml
    INFO: Restoring class oracle.install.driver.oui.ConfigCmdMappings from jar:file:/u01/tmp/OraInstall2010-01-06_10-27-37AM/ext/jlib/installcommons_1.0.0b.jar!/
    oracle/install/driver/oui/resource/ConfigCommandMappings.xml
    SEVERE: [FATAL] An internal error occurred within cluster verification framework
    Unable to get the current group.
    Refer associated stacktrace #oracle.install.commons.util.exception.DefaultErrorAdvisor:11
    INFO: Advice is ABORT
    SEVERE: Unconditional Exit
    INFO: Adding ExitStatus FAILURE to the exit status set
    INFO: Finding the most appropriate exit status for the current application
    INFO: Exit Status is -1
    INFO: Shutdown Oracle Database 11g Release 2 Installer
    $
    >>
    # more oraInstall2010-01-06_10-27-37AM.err
    ---# Begin Stacktrace #---------------------------
    ID: oracle.install.commons.util.exception.DefaultErrorAdvisor:11
    oracle.cluster.verification.VerificationException: An internal error occurred within cluster verification framework
    Unable to get the current group
    at oracle.cluster.verification.ClusterVerification.<init>(ClusterVerification.java:200)
    at oracle.cluster.verification.ClusterVerification.getInstance(ClusterVerification.java:294)
    at oracle.install.driver.oui.OUISetupDriver.load(OUISetupDriver.java:407)
    at oracle.install.ivw.db.driver.DBSetupDriver.load(DBSetupDriver.java:161)
    at oracle.install.commons.base.driver.common.Installer.run(Installer.java:216)
    at oracle.install.ivw.db.driver.DBInstaller.run(DBInstaller.java:126)
    at oracle.install.commons.util.Application.startup(Application.java:869)
    at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:164)
    at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)
    at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:265)
    at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:114)
    at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:132)
    ---# End Stacktrace #-----------------------------
    <<
    $ uname -a
    HP-UX rx2600 B.11.31 U ia64 <XXXXXXXX> unlimited-user license
    # swlist | grep -i oe
    HP-Caliper-PERF C.11.31.04 HP Caliper OE Bundle
    HP-WDB-DEBUGGER C.11.31.04 HP DEBUGGER OE Bundle
    HPUX11i-DC-OE B.11.31.0903 HP-UX Data Center Operating Environment
    # swlist | grep -i qpk
    QPKBASE B.11.31.0903.334a Base Quality Pack Bundle for HP-UX 11i v3, March 2009
    # swlist -l product | grep -i c++
    ACXX C.06.20 HP C/aC++ Compiler
    C-ANSI-C C.06.20 HP C/aC++ Compiler
    PHSS_37501 1.0 aC++ Runtime (IA: A.06.16, PA: A.03.76)
    PHSS_39824 1.0 HP C/aC++ Compiler (A.06.23)
    i start the installation as oracle and my group and user id is
    $ id
    uid=109(oracle) gid=102(oinstall) groups=101(dba),104(asmdba)
    Please let me know what else do i need, we might have to use the hardware for testing another application so i am limited in terms of time constraints
    any help is much appreciated, Thank you!!
    Regards,
    Dasjith
    Edited by: user10247524 on Jan 6, 2010 7:52 AM

    Hi Stig Sundqvist
    Where can i find MOS Doc 983713.1 ??You have to login https://support.oracle.com/CSP/ui/flash.html and you have to CSI account. This site is oracle site for tech. documents for can rise SR etc.. for more details please check
    What is CSI:
    Re: Installing Oracle Database 10.2.0.4
    And how do i do to fix this problem ????Login metalink then find upper note and follow document
    Hope it helps
    Regard
    Helios

  • HT1338 my mac is running 10.5.8, I bought a new Nano, itunes is prompting me to get the current itunes, but my mac will not take it, states I need 10.6.8.  How do I get that?  When I run a software update, system says there is none.  Help

    my mac is running 10.5.8, I bought a new Nano, itunes is prompting me to get the current itunes, but my mac will not take it, states I need 10.6.8.  How do I get that?  When I run a software update, system says there is none.  Help

    Click here, check that your computer meets the requirements, buy and install the DVD, and then run Software Update.
    (73181)

  • How to get the current page URL

    HI All
    I am working in oracle apps 4.0
    I have one page called history in that i have one page item called Application url. My application id is 122 but its a copy of application 106
    How to get the current page url for the page item.
    Any steps should be help ful
    Thanks & Regards
    Srikkanth.M

    I'm not 100% clear on what the requirement is from the description, however it does sound like you are making things unnecessarily complicated.
    If you want permanent/ID-independent links then use application and page aliases.
    so here we used to display the url like this: <tt>{noformat}http://81.131.254.171:8080/apex/f?p=122{noformat}</tt>
    Do you mean that the URL is displayed like that? If so that doesn't seem particularly helpful. How is anyone supposed to know what it is?
    There are many ways to provide links in APEX&mdash;including lists and nav bars.
    Where the link is to another resource located on the same server (such as another page in the same app, or a different app in the workspace), relative addressing can be used, making it unecessary to include scheme, domain and port information in the URL. For example, if the page to be linked to has a page alias <tt>ABOUT</tt> in an application with alias <tt>UNITY</tt>, and the apps share an authentication scheme/cookie to permit shared sessions, then the link URL is simply
    f?p=UNITY:ABOUT:&APP_SESSION.

  • How to get the "current date" in the BEx?

    Hi all,
    I need to get the "current date" in my Bex report in order to make a comparison. I know there is a "How to" which shows how to get the current date via a User Exit, but I didn't find it. Could you please help me?
    Thanks

    1. Create a  New Formula in Key Figures structure
    2. Give tech name and description and Select "New variable" option
    3. Next screen will launch Variable Wizard -> create a new variable with replacement path as processing type
    4. in next screene  select the date characteristic that represents the first date to use in the calculation (From Date)
    5. In the next  screen select Key in the Replace Variable with field. Leave all the other options as they are
    6. In the next Currencies and Units screen select Date as the Dimension ID.
    6. Save variable
    repeate the Above steps to create another variable (To Date)
    and now you can use these two new replacement path variables in your new formula.
    Dev

  • How to get the current logical system?

    Dear Abapers:
    I can't find the logical system value from the table SYST, pls tell me how to get the current logical system name, Thanks!

    Hi,
    Check with the table T000, the Logical system field name is LOGSYS.
    Regards
    Thiru

Maybe you are looking for

  • Trackpad issues on Macbook Pro 15"

    Hi!  I'm experiencing trackpad issues with a Macbook Pro 15" Model A1286. The battery had recently swollen after a long and productive life of about 5 years. Assuming this was a fair life/usage for a battery I have ordered a replacement from Apple. W

  • Help with Dynamic Calc

    Hello, could someone help me why after creating the dynamic calc member below, our calc script somehow get stuck/ ran very very slow... Below is currently our Hierararchy for Division dimension: Division Dimension Division Rollup ( Never Share) Divis

  • Recommend a Micros to Standard USB adapter

    Has anyone tried scanning from an HP Mobile 150 printer using an HP 10 ee tablet? Is there an dapter that can be used and can you recommend any? thanks!

  • How can i get the map app to show Spanish street and avenue names in that language ... not in English

    i have ipad 4th gen and ipad original ... using both in Bogota Colombia thru the Colombian Apple Store.  I have the map app in spanish on the ipad original but cannot change the ipad 4 map app to show the streets (calles), avenues (carreras / avenida

  • I noticed one bug in iOS App Store

    On iOS App Store, in Top Free category in Top Chart option there is a app which is not free.