visual studio 容器工具首次加载太慢 vsdbg\vs2017u5 exists, deleting 的解决方案
========== 正在准备容器 ==========
正在准备 Docker 容器...
C:\Windows\System32\WindowsPowerShell\v1.\powershell.exe -NonInteractive -NoProfile -WindowStyle Hidden -ExecutionPolicy RemoteSigned -File "C:\Users\MESTC\AppData\Local\Temp\GetVsDbg.ps1" -Version vs2017u5 -RuntimeID linux-x64 -InstallPath "C:\Users\MESTC\vsdbg\vs2017u5"
Info: Using vsdbg version '16.0.20412.1'
Info: Using Runtime ID 'linux-x64'
Info: C:\Users\MESTC\vsdbg\vs2017u5 exists, deleting.
如上情况
感兴趣可以打开 GetVsDbg.ps1
# Copyright (c) Microsoft. All rights reserved. <#
.SYNOPSIS
Downloads the given $Version of vsdbg for the given $RuntimeID and installs it to the given $InstallPath .DESCRIPTION
The following script will download vsdbg and install vsdbg, the .NET Core Debugger .PARAMETER Version
Specifies the version of vsdbg to install. Can be 'latest', 'vs2019', 'vs2017u5', 'vs2017u1', or a specific version string i.e. 15.0.25930.0 .PARAMETER RuntimeID
Specifies the .NET Runtime ID of the vsdbg that will be downloaded. Example: linux-x64. Defaults to win7-x64. .Parameter InstallPath
Specifies the path where vsdbg will be installed. Defaults to the directory containing this script. .INPUTS
None. You cannot pipe inputs to GetVsDbg. .EXAMPLE
C:\PS> .\GetVsDbg.ps1 -Version latest -RuntimeID linux-x64 -InstallPath .\vsdbg .LINK
For more information about using this script with Visual Studio Code see: https://github.com/OmniSharp/omnisharp-vscode/wiki/Attaching-to-remote-processes For more information about using this script with Visual Studio see: https://github.com/Microsoft/MIEngine/wiki/Offroad-Debugging-of-.NET-Core-on-Linux---OSX-from-Visual-Studio To report issues, see: https://github.com/omnisharp/omnisharp-vscode/issues
#> Param (
[Parameter(Mandatory=$true, ParameterSetName="ByName")]
[string]
[ValidateSet("latest", "vs2019", "vs2017u1", "vs2017u5")]
$Version, [Parameter(Mandatory=$true, ParameterSetName="ByNumber")]
[string]
[ValidatePattern("\d+\.\d+\.\d+.*")]
$VersionNumber, [Parameter(Mandatory=$false)]
[string]
$RuntimeID, [Parameter(Mandatory=$false)]
[string]
$InstallPath = (Split-Path -Path $MyInvocation.MyCommand.Definition)
) $ErrorActionPreference="Stop" # In a separate method to prevent locking zip files.
function DownloadAndExtract([string]$url, [string]$targetLocation) {
Add-Type -assembly "System.IO.Compression.FileSystem"
Add-Type -assembly "System.IO.Compression" [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 Try {
$zipStream = (New-Object System.Net.WebClient).OpenRead($url)
}
Catch {
Write-Host "Info: Opening stream failed, trying again with proxy settings."
$proxy = [System.Net.WebRequest]::GetSystemWebProxy()
$proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials
$webClient = New-Object System.Net.WebClient
$webClient.UseDefaultCredentials = $false
$webClient.proxy = $proxy $zipStream = $webClient.OpenRead($url)
} $zipArchive = New-Object System.IO.Compression.ZipArchive -ArgumentList $zipStream
[System.IO.Compression.ZipFileExtensions]::ExtractToDirectory($zipArchive, $targetLocation)
$zipArchive.Dispose()
$zipStream.Dispose()
} # Checks if the existing version is the latest version.
function IsLatest([string]$installationPath, [string]$runtimeId, [string]$version) {
$SuccessRidFile = Join-Path -Path $installationPath -ChildPath "success_rid.txt"
if (Test-Path $SuccessRidFile) {
$LastRid = Get-Content -Path $SuccessRidFile
if ($LastRid -ne $runtimeId) {
return $false
}
} else {
return $false
} $SuccessVersionFile = Join-Path -Path $installationPath -ChildPath "success_version.txt"
if (Test-Path $SuccessVersionFile) {
$LastVersion = Get-Content -Path $SuccessVersionFile
if ($LastVersion -ne $version) {
return $false
}
} else {
return $false
} return $true
} function WriteSuccessInfo([string]$installationPath, [string]$runtimeId, [string]$version) {
$SuccessRidFile = Join-Path -Path $installationPath -ChildPath "success_rid.txt"
$runtimeId | Out-File -Encoding utf8 $SuccessRidFile $SuccessVersionFile = Join-Path -Path $installationPath -ChildPath "success_version.txt"
$version | Out-File -Encoding utf8 $SuccessVersionFile
} $ExplitVersionNumberUsed = $false
if ($Version -eq "latest") {
$VersionNumber = "16.0.20412.1"
} elseif ($Version -eq "vs2019") {
$VersionNumber = "16.0.20412.1"
} elseif ($Version -eq "vs2017u5") {
$VersionNumber = "16.0.20412.1"
} elseif ($Version -eq "vs2017u1") {
$VersionNumber = "15.1.10630.1"
} else {
$ExplitVersionNumberUsed = $true
}
Write-Host "Info: Using vsdbg version '$VersionNumber'" if (-not $RuntimeID) {
$RuntimeID = "win7-x64"
} elseif (-not $ExplitVersionNumberUsed) {
$legacyLinuxRuntimeIds = @{
"debian.8-x64" = "";
"rhel.7.2-x64" = "";
"centos.7-x64" = "";
"fedora.23-x64" = "";
"opensuse.13.2-x64" = "";
"ubuntu.14.04-x64" = "";
"ubuntu.16.04-x64" = "";
"ubuntu.16.10-x64" = "";
"fedora.24-x64" = "";
"opensuse.42.1-x64" = "";
} # Remap the old distro-specific runtime ids unless the caller specified an exact build number.
# We don't do this in the exact build number case so that old builds can be used.
if ($legacyLinuxRuntimeIds.ContainsKey($RuntimeID.ToLowerInvariant())) {
$RuntimeID = "linux-x64"
}
}
Write-Host "Info: Using Runtime ID '$RuntimeID'" # if we were given a relative path, assume its relative to the script directory and create an absolute path
if (-not([System.IO.Path]::IsPathRooted($InstallPath))) {
$InstallPath = Join-Path -Path (Split-Path -Path $MyInvocation.MyCommand.Definition) -ChildPath $InstallPath
} if (IsLatest $InstallPath $RuntimeID $VersionNumber) {
Write-Host "Info: Latest version of VsDbg is present. Skipping downloads"
} else {
if (Test-Path $InstallPath) {
Write-Host "Info: $InstallPath exists, deleting."
Remove-Item $InstallPath -Force -Recurse -ErrorAction Stop
} $target = ("vsdbg-" + $VersionNumber).Replace('.','-') + "/vsdbg-" + $RuntimeID + ".zip"
$url = "https://vsdebugger.azureedge.net/" + $target DownloadAndExtract $url $InstallPath WriteSuccessInfo $InstallPath $RuntimeID $VersionNumber
Write-Host "Info: Successfully installed vsdbg at '$InstallPath'"
}
========== 正在准备容器 ==========
正在准备 Docker 容器...
C:\Windows\System32\WindowsPowerShell\v1.\powershell.exe -NonInteractive -NoProfile -WindowStyle Hidden -ExecutionPolicy RemoteSigned -File "C:\Users\MESTC\AppData\Local\Temp\GetVsDbg.ps1" -Version vs2017u5 -RuntimeID linux-x64 -InstallPath "C:\Users\MESTC\vsdbg\vs2017u5"
Info: Using vsdbg version '16.0.20412.1'
Info: Using Runtime ID 'linux-x64'
Info: C:\Users\MESTC\vsdbg\vs2017u5 exists, deleting.
下面说说解决方案
下载包
https://vsdebugger.azureedge.net/vsdbg-(你的版本号.号换成-号)/vsdbg-(你的Runtime ID).zip
例如我的
https://vsdebugger.azureedge.net/vsdbg-16-0-20412-1/vsdbg-linux-x64.zip
下载之后解压到你的安装路径
例如我的
-InstallPath "C:\Users\MESTC\vsdbg\vs2017u5"
然后在该文件下添加一个success_rid.txt文件,内容为你的Runtime ID
例如我的linux-x64
还要添加一个success_version.txt文件,内容为你的版本号,如16.0.20412.1 重启 visual studio
下面还会下载另一个,相同的处理方式,再重启一次就ok了 最新版操作过程 最新下载文件路径
https://vsdebugger.azureedge.net/vsdbg-16-2-10709-2/vsdbg-linux-x64.zip
https://vsdebugger.azureedge.net/vsdbg-16-2-10709-2/vsdbg-linux-musl-x64.zip
解压路径
C:\Users\用户名\vsdbg\vs2017u5 -> vsdbg-linux-x64.zip
C:\Users\用户名\vsdbg\vs2017u5\linux-musl-x64 -> vsdbg-linux-musl-x64.zip 解压完了,在路径 C:\Users\用户名\vsdbg\vs2017u5 里面 新建 success_rid.txt 编辑内容 linux-x64,再新建 success_version.txt 编辑内容 16.2.10709.2
在路径 C:\Users\用户名\vsdbg\vs2017u5\linux-musl-x64 里面 新建 success_rid.txt 编辑内容 linux-musl-x64,再新建 success_version.txt 编辑内容 16.2.10709.2
完成
最新下载
https://vsdebugger.azureedge.net/vsdbg-16-3-10904-1/vsdbg-linux-x64.zip
https://vsdebugger.azureedge.net/vsdbg-16-3-10904-1/vsdbg-linux-musl-x64.zip
Info: Previous installation at '/root/vsdbg' not found
Info: Using vsdbg version '16.3.10904.1'
Info: Creating install directory
Using arguments
Version : 'latest'
Location : '/root/vsdbg'
SkipDownloads : 'false'
LaunchVsDbgAfter : 'false'
RemoveExistingOnUpgrade : 'false'
Info: Using Runtime ID 'linux-x64'
Downloading https://vsdebugger.azureedge.net/vsdbg-16-3-10904-1/vsdbg-linux-x64.zip
visual studio 容器工具首次加载太慢 vsdbg\vs2017u5 exists, deleting 的解决方案的更多相关文章
- Microsoft Visual Studio 2008 未能正确加载包“Visual Web Developer HTML Source Editor Package” | “Visual Studio HTM Editor Package”
在安装Microsoft Visual Studio 2008 后,如果Visual Studio 2008的语言版本与系统不一致时,比如:在Windows 7 English System 安装Vi ...
- vue单页应用首次加载太慢之性能优化
问题描述: 最近开发了一个单页应用,上线后发现页面初始加载要20s才能完成,这就很影响用户体验了,于是分析原因,发现页面加载时有个 vendor.js达到了3000多kb,于是在网上查找了一下原因,是 ...
- Visual studio 2017 未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包
装完win10更新 发现vs杯具了… 提示 未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包 可以尝试在vs命令行 ...
- 首次加载进来DEV控件列表第一行颜色总是不对,后台代码显示的数据正确
1:行改变的颜色正确的颜色: 1.1颜色效果如下图: 1.2:设置行改变颜色: 2:结果首次加载第一行颜色为: 3:解决方案: 3.1 :Views-->OptionsSelection --& ...
- 如何解决Visual Studio 首次调试 docker 的 vs2017u5 exists, deleting Opening stream failed, trying again with proxy settings
前言 因为之前我电脑安装的是windows10家庭版,然而windows10家庭没有Hyper-v功能. 搜索了几篇windows10家庭版安装docker相关的博客,了解一些前辈们走过的坑. 很多人 ...
- visual studio开发工具的C#主流控件属性一览表
visual studio开发工具的C#主流控件属性一览表 详细的介绍了各控制属性的详细中文介绍 C#控件及常用设计整理 1.窗体 1.常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程 ...
- visual studio 2019工具里添加开发中命令提示符的方法
最新新装了visual studio 2019,发现默认的没有开发者命令提示符 现将添加步骤描述如下: 从VS2019菜单选择"Tools",然后选择"外部工具" ...
- Visual Studio测试工具TestDriven.NET2.2
原文:Visual Studio测试工具TestDriven.NET2.2 关于TestDriven.NET的文章很多,有很详细的说明,我不太会单元测试只是每次要运行程序才能调试觉得太麻烦了,所以找了 ...
- vue 首次加载缓慢/刷新后加载缓慢 原因及解决方案
# vue 首次加载缓慢/刷新后加载缓慢 原因及解决方案 最近做项目发现一个问题,页面每次刷新后加载速度都非常慢,20s左右,在开发环境则非常流畅,几乎感觉不到,本文参考望山的各种方案优化 1,关闭打 ...
随机推荐
- 微信小程序把玩(十五)checkbox组件
原文:微信小程序把玩(十五)checkbox组件 不得不吐糟下checkbox默认样式真是有点略丑!!!checkbox组件为一个多选框被放到checkbox-group组中,并在checkbox-g ...
- 年度调查 看看 2016 年 Go 语言调查结果
Go 语言官方博客公布了 2016 年 Go 语言使用调查. 在 3,595 名被调查者中,89% 称他们在工作中或工作之外用 Go 编程:63% 称他们的工作是 Web 开发,但只有 9% 的人只从 ...
- Elasticsearch教程(一)简介与安装
简单概念 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为 ...
- Qt5---ftp上传功能(可直接克隆某个小模块,查看QT下FTP的socket原理)
http://blog.csdn.net/freeape/article/details/52802163
- 界面美化.CStatic控件的美化(好多系列文章)
http://www.cnblogs.com/20090802/archive/2010/09/17/1829283.html 静态控件也是比较常用的控件,在VS开发环境中用的应该挺频繁的吧. 其实m ...
- 用node.js(socket.io)实现数据实时推送
在做商品拍卖的时候,要求在商品的拍卖页面需要实时的更新当前商品的最高价格.实现的方式有很多,比如: 1.setInterval每隔n秒去异步拉取数据(缺点:更新不够实时) 2. AJAX轮询方式方式推 ...
- kubernetes实战篇之windows添加自签ca证书信任
系列目录 由于服务端设置了https访问,因此如果通过浏览器访问时会提示证书不被信任,但是仍然可以通过处理继续访问.但是在自动化环境中,都是通过命令来请求的,这样不受信任的https就会报错误,这样我 ...
- Laravel --- 如何较优雅的使用公用函数
一.创建公用文件 App/Helpers/CommonHelper.php 二.创建Provider php artisan make:provider HelperServiceProvider C ...
- 【通过ssh oracle11g安装】centos6静默安装oracle11g
转载链接:https://blog.csdn.net/u011391839/article/details/76566316 根据实际情况略作调整~ 博主参考了以上链接成功进行安装,列一下自己遇到的坑 ...
- 字节跳动Java研发面试99题(含答案):JVM+Spring+MySQL+线程池+锁
JVM的内存结构 根据 JVM 规范,JVM 内存共分为虚拟机栈.堆.方法区.程序计数器.本地方法栈五个部分. 1. Java虚拟机栈:线程私有:每个方法在执行的时候会创建一个栈帧,存储了局部变量表, ...