It's a known issue that once you restarted the virtual machine, the RDP certificate thumbprint disappeared. The RDP certificate was still in the virtual machine so that you could still remote desktop. However, you wouldn't be able to
enable remote debug extension from Visual Studio. Sorry about the inconvenience. We will roll out the fix very soon.
There is a workaround that you can use Azure Powershell cmdlet (installation from
http://go.microsoft.com/?linkid=9811175&clcid=0x409) to enable remote debug extension manually. Here are the steps.
1 ) Remote desktop to the machine.
2 ) Find the RDP certificate from LocalMachine\Remote Desktop" certificate store and keep the thumbprint.
3 ) Manually create another self-signed certificate and install it on the machine with Visual Studio. You can follow
http://msdn.microsoft.com/en-us/library/windowsazure/gg432987.aspx .
Keep the thumbprint.
4 ) Run the following sample powershell script (for highlight, ServerThumbprint is RDP thumbprint, ClientThumbprint is the new created.)
Add-AzureAccount
Select-AzureSubscription
"Sample Azure Subscription"
$vm
= Get-AzureVM
-ServiceName "samplecloudservice"
-Name "samplevirtualmachine"
$endpoints
= @(
,@{Name="RDConnVS2013"; PublicPort=30400; PrivatePort=30398}
,@{Name="RDFwdrVS2013"; PublicPort=31400; PrivatePort=31398}
)
foreach($endpoint
in $endpoints)
{
Add-AzureEndpoint -VM
$vm -Name
$endpoint.Name
-Protocol tcp
-PublicPort $endpoint.PublicPort
-LocalPort $endpoint.PrivatePort
}
$referenceName
= "Microsoft.VisualStudio.WindowsAzure.RemoteDebug.RemoteDebugVS2013"
$publisher
= "Microsoft.VisualStudio.WindowsAzure.RemoteDebug"
$extensionName
= "RemoteDebugVS2013"
$version
= "1.*"
$publicConfiguration
= "<PublicConfig><Connector.Enabled>true</Connector.Enabled><ClientThumbprint>56D7D1B25B472268E332F7FC0C87286458BFB6B2</ClientThumbprint><ServerThumbprint>E7DCB00CB916C468CC3228261D6E4EE45C8ED3C6</ServerThumbprint><ConnectorPort>30398</ConnectorPort><ForwarderPort>31398</ForwarderPort></PublicConfig>"
$vm
| Set-AzureVMExtension `
-ReferenceName $referenceName `
-Publisher $publisher `
-ExtensionName $extensionName `
-Version $version `
-PublicConfiguration
$publicConfiguration
foreach($extension
in $vm.VM.ResourceExtensionReferences)
{
if(($extension.ReferenceName
-eq $referenceName) `
-and ($extension.Publisher
-eq $publisher) `
-and ($extension.Name
-eq $extensionName) `
-and ($extension.Version
-eq $version))
{
$extension.ResourceExtensionParameterValues[0].Key
= 'config.txt'
break
}
}
$vm
| Update-AzureVM
-
Marked as answer by
Will ShaoMicrosoft contingent staff, Moderator
Monday, April 28, 2014 1:29 AM