It's all about the answers!

Ask a question

Unable to create a sandbox from RTC Shell (6.0.5) on Windows 10, any suggestions?


Daniel Barbour (25015) | asked Mar 21 '18, 4:35 p.m.

I am running into the following error message whenever I try to create a New Sandbox on a system with a clean install of the RTC Shell Client (6.0.5) on my Windows 10 Pro machine:

CRRTC8500E: Error running SCM daemon (C:\Program Files\IBM\Rational Team Concert\Shell\3rd Party\scmtools\eclipse\scm.exe) on C:\RTC_Shell Workspace: System.ComponentModel.Win32Exception (0x800405): The requested operation requires elevation at System.Diagnostics.Process.StartWithCreateProcess(ProcesssStartInfo startInfo) at com.ibm.team.filesystem.service.fsdaemon.FilesystemDaemonInternalStart (IProgressMonitor monitor) in c:\RTC_BUILDS\I6.0.5_20171102-1953\Filesystem\FilesystemService\fsdaemon\FielsystemDaemon.cs:line 263

I have tried setting scm.exe with Run as administrator privileges, tried different locations, uninstalled/reinstalled RTC Shell client - all to no avail.

I do see this work (with the SAME login and SAME projects) when performed from a different machine (Windows Server 2012) so believe there is something 'special' about Windows 10 (Version 1709 (OS Build 16299.309).

Any suggestions would be appreciated :)

Accepted answer


permanent link
Ralph Schoon (58.7k23642) | answered Mar 23 '18, 11:29 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER

The path C:\Program Files\IBM\Rational Team Concert\Shell\3rd Party\scmtools\eclipse\scm.exe is triggering my spider senses.

I would avoid installing into Program Files. Under Program files, if an application needs to create a folder it needs to be explicitly run as administrator.

Unfortunately the default install location in IM is also always Program Files, even for the server which causes many issues.

I can only hint NOT to install the CLM servers anywhere near Program Files, if you can avoid it and I would try the same for the clients. I am not sure if that cases it however.

Geoffrey Clemm selected this answer as the correct answer

One other answer



permanent link
Priyadarshini Gorur (3313) | answered Mar 22 '18, 6:14 a.m.
JAZZ DEVELOPER
edited Mar 22 '18, 6:15 a.m.

Hi Daniel,

We haven't seen that before. Can you try this for us? Open PowerShell and execute the following commands, these are equivalent of the code that we are using to start the scm.exe process from our RTC Shell Client.

PS > $p = New-Object System.Diagnostics.Process
PS > $p.StartInfo.FileName = "C:\Program Files\IBM\Rational Team Concert\Shell\3rd Party\scmtools\eclipse\scm.exe"
PS > $p.StartInfo.Arguments = "daemon start <New Sandbox Path>"
PS > $p.StartInfo.CreateNoWindow = $true
PS > $p.StartInfo.UseShellExecute = $false
PS > $p.StartInfo.RedirectStandardOutput = $true
PS > $p.StartInfo.RedirectStandardError = $true
PS > $p.Start()

Do you get the same exception?

Also, if you can, disable UAC and try to create the new sandbox in RTC Shell Client. Does it still fail?



Comments
Daniel Barbour commented Mar 22 '18, 9:13 a.m.

Hi, Thank you for the suggestions.

a.) I disabled UAC and, unfortunately, had the same result.

b.) The PowerShell script yielded the following:
PS > $p = New-Object System.Diagnostics.Process
PS > $p.StartInfo.FileName = "C:\Program Files\IBM\Rational Team Concert\Shell\3rd Party\scmtools\ecli
pse\scm.exe"
PS > $p.StartInfo.Arguments = "daemon start C:\temp\rtc_workspace"
PS > $p.StartInfo.CreateNoWindow = $true
PS > $p.StartInfo.UseShellExecute = $false
PS > $p.StartInfo.RedirectStandardOutput = $true
PS > $p.StartInfo.RedirectStandardError = $true
PS > $p.Start()
Exception calling "Start" with "0" argument(s): "The system cannot find the file specified"
At line:1 char:1
+ $p.Start()
+ ~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : Win32Exception


Daniel Barbour commented Mar 22 '18, 10:00 a.m.

Followup - I noticed the extra '\' in the StartInfo.FileName and re-ran the script after correcting.  With this change the following was returned:

Exception calling "Start" with "0" argument(s): "The requested operation requires elevation"
At line:1 char:1
+ $p.Start()
+ ~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : Win32Exception


Priyadarshini Gorur commented Mar 22 '18, 10:57 a.m.
JAZZ DEVELOPER

Thanks, and does it work if you run PowerShell as administrator? Also, when run as normal user, instead of scm.exe, can you run any other executable, say calc.exe?



Priyadarshini Gorur commented Mar 23 '18, 1:18 a.m.
JAZZ DEVELOPER

Hi Daniel, I have asked my team to try this out too. I will update here with the results.


Daniel Barbour commented Mar 23 '18, 9:38 a.m.

Hi Priyadarshini,
When running the script from a PowerShell launched as Administrator - the error did NOT occur.

Running calc.exe as a Normal User works fine.


Priyadarshini Gorur commented Mar 23 '18, 12:19 p.m.
JAZZ DEVELOPER

Ralph, I had the same thought too, maybe scm.exe being in "Program Files" is the problem. Daniel, can you copy the "3rd Party" folder, say under your user directory and run as normal user from PowerShell? If that works, you can uninstall Shell and re-install it at a location that doesn't need elevation? Depending on the results, we will either think of a way to work this around in the Shell client or update our install help if we can't.


1
Daniel Barbour commented Mar 23 '18, 1:32 p.m. | edited Mar 23 '18, 1:47 p.m.

Ralph's thoughts seem to be on target.  I copied the Rational Team Concert Shell files to a \Temp folder and re-ran the PowerShell script as a normal user with no issues.

It should be noted that the installer does include the following warning (which I did not pay attention to when I first installed the app):

"To run an application without administrative privileges on the current operating system, you must install the application package into a directory that is not virtualized.  The Program Files directory on the current operating system is virtualized.  To run an application with administrative privileges after it is installed, right-click the package and click "Run as administrator". 

I did try the latter (at least I thought I did) before submitting this question.  However, in the end I will simply re-install it to a different location.   Thanks for your guidance :)

showing 5 of 7 show 2 more comments

Your answer


Register or to post your answer.