I'm getting a generic error message while trying to connect to our server. I was previously connected but can't starting today.
Even when I put in invalid username/password i get the "object already exists" message.
Any idea?
Object already exists
Moderator: SourceGear
Re: Object already exists
Can you check your Vault GUI client log for any additional errors? That file is in the user's temp directory and is called VaultGUIclient.txt (%temp%\VaultGUIclient.txt).
If the error looks no different there, another place that might give a clue is the Vault server log. That is found on the Vault server at C:\Windows\temp\sgvault\sgvault.log.
One thing that you might try to get up and running again quickly is you might try renaming your client-side cache. Instructions are posted here: http://support.sourcegear.com/viewtopic ... 13&t=11513. You can use the instructions that would keep your current working folder.
If the error looks no different there, another place that might give a clue is the Vault server log. That is found on the Vault server at C:\Windows\temp\sgvault\sgvault.log.
One thing that you might try to get up and running again quickly is you might try renaming your client-side cache. Instructions are posted here: http://support.sourcegear.com/viewtopic ... 13&t=11513. You can use the instructions that would keep your current working folder.
Beth Kieler
SourceGear Technical Support
SourceGear Technical Support
Re: Object already exists
I've reviewed that other posting and have removed everything from appData\local\... then tried it again and VaultGUIClient.txt reappears with this message. I've also tried creating a new windows account on the machine and it gets the same error message, but then I installed the client on a VM machine and that can connect as normal.
6/21/2014 4:20:33 PM <generic>: [GUIClientWorkerThread:1188] [System.Security.Cryptography.CryptographicException: Object already exists.
at System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr)
at System.Security.Cryptography.Utils._CreateCSP(CspParameters param, Boolean randomKeyContainer, SafeProvHandle& hProv)
at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer)
at System.Security.Cryptography.RSACryptoServiceProvider.get_PersistKeyInCsp()
at System.Security.Cryptography.RSACryptoServiceProvider.set_PersistKeyInCsp(Boolean value)
at VaultLib.VaultUserCrypt.EncryptPassword(String strUnencryptedPassword, Byte[] publicKey, Byte[] exponent, String& strEncryptedPassword, String& strRMKey)
at VaultClientNetLib.VaultConnection.Login(String strURLBase, String strUserLogin, String strPassword)
at VaultClientOperationsLib.ClientInstance.Login(String urlbase, String username, String password)
at VaultClientPresentationLib.GUIClientInstance.ConnectToServer(String& outserverPath, Boolean forceDialogShow, String& outprofileName, String& outusername, Boolean& outbUseSSL, Boolean& outbAutoLogin)
at VaultClientPresentationLib.GUIClientThread.ProcessCommand(GUIClientThreadCommand command, GUIClientThreadCommandResult& outputResult)]Object already exists.
at System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr)
at System.Security.Cryptography.Utils._CreateCSP(CspParameters param, Boolean randomKeyContainer, SafeProvHandle& hProv)
at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer)
at System.Security.Cryptography.RSACryptoServiceProvider.get_PersistKeyInCsp()
at System.Security.Cryptography.RSACryptoServiceProvider.set_PersistKeyInCsp(Boolean value)
at VaultLib.VaultUserCrypt.EncryptPassword(String strUnencryptedPassword, Byte[] publicKey, Byte[] exponent, String& strEncryptedPassword, String& strRMKey)
at VaultClientNetLib.VaultConnection.Login(String strURLBase, String strUserLogin, String strPassword)
at VaultClientOperationsLib.ClientInstance.Login(String urlbase, String username, String password)
at VaultClientPresentationLib.GUIClientInstance.ConnectToServer(String& outserverPath, Boolean forceDialogShow, String& outprofileName, String& outusername, Boolean& outbUseSSL, Boolean& outbAutoLogin)
at VaultClientPresentationLib.GUIClientThread.ProcessCommand(GUIClientThreadCommand command, GUIClientThreadCommandResult& outputResult)
Stack Trace:
at VaultClientPresentationLib.GUIClientInstance.ShowCommandException(Exception e, IWin32Window dialogOwner)
at VaultClientPresentationLib.GUIClientThread.ProcessCommand(GUIClientThreadCommand command, GUIClientThreadCommandResult& outputResult)
at VaultClientPresentationLib.GUIClientThread.Start()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
6/21/2014 4:20:33 PM <generic>: [GUIClientWorkerThread:1188] [System.Security.Cryptography.CryptographicException: Object already exists.
at System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr)
at System.Security.Cryptography.Utils._CreateCSP(CspParameters param, Boolean randomKeyContainer, SafeProvHandle& hProv)
at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer)
at System.Security.Cryptography.RSACryptoServiceProvider.get_PersistKeyInCsp()
at System.Security.Cryptography.RSACryptoServiceProvider.set_PersistKeyInCsp(Boolean value)
at VaultLib.VaultUserCrypt.EncryptPassword(String strUnencryptedPassword, Byte[] publicKey, Byte[] exponent, String& strEncryptedPassword, String& strRMKey)
at VaultClientNetLib.VaultConnection.Login(String strURLBase, String strUserLogin, String strPassword)
at VaultClientOperationsLib.ClientInstance.Login(String urlbase, String username, String password)
at VaultClientPresentationLib.GUIClientInstance.ConnectToServer(String& outserverPath, Boolean forceDialogShow, String& outprofileName, String& outusername, Boolean& outbUseSSL, Boolean& outbAutoLogin)
at VaultClientPresentationLib.GUIClientThread.ProcessCommand(GUIClientThreadCommand command, GUIClientThreadCommandResult& outputResult)]Object already exists.
at System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr)
at System.Security.Cryptography.Utils._CreateCSP(CspParameters param, Boolean randomKeyContainer, SafeProvHandle& hProv)
at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer)
at System.Security.Cryptography.RSACryptoServiceProvider.get_PersistKeyInCsp()
at System.Security.Cryptography.RSACryptoServiceProvider.set_PersistKeyInCsp(Boolean value)
at VaultLib.VaultUserCrypt.EncryptPassword(String strUnencryptedPassword, Byte[] publicKey, Byte[] exponent, String& strEncryptedPassword, String& strRMKey)
at VaultClientNetLib.VaultConnection.Login(String strURLBase, String strUserLogin, String strPassword)
at VaultClientOperationsLib.ClientInstance.Login(String urlbase, String username, String password)
at VaultClientPresentationLib.GUIClientInstance.ConnectToServer(String& outserverPath, Boolean forceDialogShow, String& outprofileName, String& outusername, Boolean& outbUseSSL, Boolean& outbAutoLogin)
at VaultClientPresentationLib.GUIClientThread.ProcessCommand(GUIClientThreadCommand command, GUIClientThreadCommandResult& outputResult)
Stack Trace:
at VaultClientPresentationLib.GUIClientInstance.ShowCommandException(Exception e, IWin32Window dialogOwner)
at VaultClientPresentationLib.GUIClientThread.ProcessCommand(GUIClientThreadCommand command, GUIClientThreadCommandResult& outputResult)
at VaultClientPresentationLib.GUIClientThread.Start()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
Re: Object already exists
Crypto exceptions are often caused by not enough permissions on RSA/Machine keys. With Vault, this is typically a server-side error, but it seems strange that you can get a different client to work.
Check the permissions on the Machine Keys folder on both the server and the client. I have instructions posted here, http://support.sourcegear.com/viewtopic ... 48&t=18915, that explains what to do.
Check the permissions on the Machine Keys folder on both the server and the client. I have instructions posted here, http://support.sourcegear.com/viewtopic ... 48&t=18915, that explains what to do.
Beth Kieler
SourceGear Technical Support
SourceGear Technical Support