http://www.perlmonks.org?node_id=904702


in reply to Setting Terminal Server User Profile Settings

What I was trying and failing with was

By my understanding, you're doing it right, maybe you want to try alternate forms of SetProperty?

Or maybe try Win32::OLE wrapper Win32::AD::User?

For learning about Win32/OLE, I've accumulated this list of links :)

Replies are listed 'Best First'.
Re^2: Setting Terminal Server User Profile Settings
by ToolHack (Novice) on May 13, 2011 at 21:04 UTC
    Thanks for the links. I've read most of them.

    I'm not sure what alternate forms of SetProperty means. There is a form that takes @ARGS as a parameter before the value you want to set, but I have no idea what that is for.

    I have tried setting different values:
    SetProperty("msTSConnectClientDrives", 0); SetProperty("msTSConnectClientDrives", 'No'); SetProperty("msTSConnectClientDrives", 'False'); SetProperty("msTSConnectClientDrives", Variant(VT_BOOL,0));
    Only the last one does not give an error, but it also doesn't change the check box.

    I have been able to set other TS properties. For example, TerminalServicesHomeDirectory. None of the ones that start with msTS* work though. Maybe there is a different name I should be using?

      I'm not sure what alternate forms of SetProperty means.

      Well, if you read Win32::OLE SetProperty documentation it discusses masking, so if the object you're working with has a SetProperty method, it will conflict with Win32::OLE's method, so you have to use $obj->Invoke('SetProperty', @args )

Re^2: Setting Terminal Server User Profile Settings
by Anonymous Monk on Oct 31, 2012 at 10:00 UTC