執(zhí)行場(chǎng)景:
早上 8 點(diǎn),自動(dòng)喚醒電腦,登錄微信、釘釘;
下午 6 點(diǎn),彈窗詢問是否休眠,確定后,殺掉微信、釘釘進(jìn)程,進(jìn)入休眠狀態(tài)。
完整的Windows定時(shí)休眠/喚醒流程,適用人群場(chǎng)景為『995常規(guī)社畜』
設(shè)置 cmd
# 查詢電源選項(xiàng)
powercfg /a
# 開啟休眠選項(xiàng)
powercfg -h on
依次打開并勾選:
控制面板\硬件和聲音\電源選項(xiàng)\系統(tǒng)設(shè)置\更改當(dāng)前不可用的設(shè)置\休眠
選擇一個(gè)合適的位置,比如 D:\shutdown
右鍵空白處新建文檔,將以下內(nèi)容復(fù)制粘貼
另存為 shutdownh.vbs
選擇格式為 ANSI,否則不能正常使用
腳本
' 獲取當(dāng)前程序所在的文件位置
Dim strWorkDir
strWorkDir = Left(WScript.ScriptFullName,instrrev(WScript.ScriptFullName,"\")-1)
' 加載配置文件
dim fso
config = strWorkDir & "\kill.txtc"
' 設(shè)置殺掉進(jìn)程
dim items
set fso = CreateObject("Scripting.FileSystemObject")
if fso.FileExists(config) then
set f = fso.OpenTextFile(config, 1, false)
items = f.ReadLine()
f.Close()
set f = nothing
set fso = nothing
else
If MsgBox("在休眠時(shí)需要指定關(guān)閉進(jìn)程么?",vbOKCancel) = VbOk Then
items = InputBox("輸入你休眠時(shí)需要?dú)⒌舻倪M(jìn)程,多個(gè)進(jìn)程使用空格分開")
set f = fso.CreateTextFile(config, true)
f.Write(items)
f.Close()
set f = nothing
set fso = nothing
End If
End If
' 關(guān)機(jī)操作
Set WshShell = CreateObject("Wscript.Shell")
w = WshShell.Popup("下班了,需要休眠嗎?不操作10分鐘后自動(dòng)關(guān)機(jī)", 600, "下班提醒",vbOKCancel)
If w = vbOk Or w <> vbCancel Then
If Not IsEmpty(items) then
' 千萬不要在前面加 dim,dim 只能用來聲明不能賦值
' dim process = split(items," ")
process = split(items," ")
for each item in process
WshShell.run "taskkill /f /im " & item, 0
next
End If
WshShell.run "shutdown -h",0
End If
設(shè)置休眠的時(shí)間每天下午的5:30(按照你的需求時(shí)間自行修改),執(zhí)行程序 D:\shutdown\shutdownh.vbs。
cmd 命令創(chuàng)建
schtasks.exe /create /tn "自動(dòng)休眠" /ru SYSTEM /sc daily /tr "D:\shutdown\shutdownh.vbs" /st 17:30
解釋一下為什么休眠要?dú)⒌裟承┻M(jìn)程,第一有些進(jìn)程會(huì)在掛起后持續(xù)吃內(nèi)存導(dǎo)致系統(tǒng)變的卡頓;第二有些進(jìn)程一直掛在后臺(tái)不安全,比如微信/qq等等。
第一次詢問的時(shí)候把要?dú)⑺赖倪M(jìn)程寫進(jìn)去,休眠的時(shí)候會(huì)自動(dòng)關(guān)閉的,這里舉了一些比較常用的例子
電腦休眠其他的程序不會(huì)關(guān)閉,但是微信、釘釘是必須要關(guān)的,為了安全起見。
# 查看進(jìn)程列表
tasklist
# 查看進(jìn)程正在試用的模塊
tasklist /m
# 查詢指定的dll文件正在被誰使用
tasklist /m:XXX.dll
手動(dòng)創(chuàng)建
我的電腦\此電腦\右鍵管理\創(chuàng)建計(jì)劃任務(wù)
自動(dòng)喚醒配合工具 WakeupOnStandBy
配置如 圖
喚醒設(shè)置
Windows RDP遠(yuǎn)程登錄(mstsc)卡死一直等待變成請(qǐng)稍候(Please Wait)的畫面如何解決。
相信很多人都遇到過,但搜索國(guó)內(nèi)所有網(wǎng)站,均沒有一個(gè)根本性的解決方案,很多都是答非所問。都不能解決問題,花了約3個(gè)小時(shí)整理最全的解決辦法,寫在這里。看看可否幫到有同樣問題的網(wǎng)友,可先收藏點(diǎn)贊及關(guān)注我們。
有些可能是因?yàn)镽D網(wǎng)關(guān)設(shè)置影響所致, 在RDP高級(jí)-設(shè)置中-把RD網(wǎng)關(guān)關(guān)掉試試,如果不行,就請(qǐng)看下面的詳細(xì)解決辦法大全。
服務(wù)器是運(yùn)行Windows Server 2019的共享虛擬服務(wù)器上的一個(gè)虛擬機(jī),有時(shí)可能是正常實(shí)體服務(wù)器。我是通過Win10遠(yuǎn)和到這個(gè)服務(wù)器,位于位置A的遠(yuǎn)程Windows 10計(jì)算機(jī)通常通過RDP連接到到C處的服務(wù)器沒有問題,但偶爾(每隔幾周或一個(gè)月,有時(shí)頻繁時(shí)隔幾天)它會(huì)在一個(gè)小時(shí)左右的時(shí)間內(nèi)無法連接。
看到的出錯(cuò)消息包括:
但位置B的遠(yuǎn)程Windows 7計(jì)算機(jī)幾乎總是能夠毫無問題地RDP連接到服務(wù)器,即使位置A的計(jì)算機(jī)無法連接。
如果通過位置B的Win 7機(jī)器正常RDP重新啟動(dòng)服務(wù)器,那么通常Win 10機(jī)器沒有問題。這種情況時(shí)有發(fā)生。
應(yīng)該是與Windows更新有關(guān),導(dǎo)致 windows遠(yuǎn)程卡在某個(gè)用戶登錄上,一直死鎖了。
使用其它方式登錄則正常:使用VNC登錄正常 使用本地登錄正常 使用虛擬機(jī)網(wǎng)頁登錄虛擬機(jī)也正常。就是RDP會(huì)一直請(qǐng)稍假。
很多時(shí)間是合上筆記本電腦的蓋子。該操作會(huì)使筆記本電腦進(jìn)入睡眠狀態(tài)。再從睡眠狀態(tài)恢復(fù)后再遠(yuǎn)程就出現(xiàn)這個(gè)問題。
有時(shí)是我的筆記本電腦與同一個(gè)微軟帳戶登錄連接RDP,而我的手機(jī),我的Pad和其他人的Windows PC將卡在Please Wait屏幕。
錯(cuò)誤的界面多數(shù)是這樣:
英文出錯(cuò)界面是這樣:
事件日志可能出現(xiàn)受阻的事件
這個(gè)方法不是一個(gè)長(zhǎng)久的辦法,只能臨時(shí)解決問題,不是一個(gè)最佳的解決辦法。
使用另一個(gè)管理員賬號(hào)從另一臺(tái)電腦登錄(如本電腦無法登錄的情況下)或在服務(wù)器本地登錄,然后重啟服務(wù)器,這樣就解決了,缺點(diǎn)是之前遠(yuǎn)程操作的工作可能未保存,會(huì)丟失工作數(shù)據(jù)。
有人經(jīng)常碰到這種情況。解決方法是遠(yuǎn)程重啟機(jī)器。
也可用命令重新啟動(dòng)遠(yuǎn)程主機(jī),在本地機(jī)器上運(yùn)行下面的命令來重啟我的遠(yuǎn)程機(jī)器,而無需從域中的其他windows計(jì)算機(jī)RDP登錄。192.168.0.8是遠(yuǎn)程IP地址:
shutdown.exe /r /f /m \192.168.0.8 /t 0
/r -重新啟動(dòng)
/f -強(qiáng)制進(jìn)程關(guān)閉
/m \host -其他主機(jī)上的遠(yuǎn)程操作
/t 00 -等待0秒
即使沒有活動(dòng)的連接,msrdc.exe進(jìn)程也會(huì)在后臺(tái)運(yùn)行,以便您在重新打開客戶端時(shí)可以快速重新連接。您可以通過右鍵單擊系統(tǒng)托盤區(qū)域中的Windows虛擬桌面圖標(biāo)并選擇在下拉菜單中斷開所有會(huì)話。
您也可以用下面的CMD命令殺死它:
taskkill/f/im msrdc.exe
好像是RDP有什么東西卡住了;建議用以下方法殺死rdp客戶端
taskkill /f /im msrdc.exe
運(yùn)行這個(gè)命令度試,重啟遠(yuǎn)程桌面服務(wù)
Restart-Service -Force -Name "TermService"
或者
Restart-Service -Force -DisplayName "Remote Desktop Services"
也可在服務(wù)器上創(chuàng)建了一個(gè)計(jì)劃任務(wù),以結(jié)束目標(biāo)機(jī)器上的RDP會(huì)話。這不是一個(gè)徹底的解決方案,但至少是一個(gè)變通辦法。
我每天晚上在本地域服務(wù)器上運(yùn)行的PowerShell:
$ID=query session /SERVER:你的服務(wù)器名稱|select -skip 1|%{$_.Split(' ',[System.StringSplitOptions]::RemoveEmptyEntries)}
Disconnect-RDUser -HostServer 你的服務(wù)器名稱 -UnifiedSessionID $ID[8] -Force
exit 0
有時(shí)出問題是使用已保存的憑據(jù)進(jìn)行連接會(huì)出現(xiàn)這個(gè)錯(cuò)誤。
我在macOS上,將選項(xiàng)設(shè)置為“需要時(shí)詢問”以獲取憑證。
當(dāng)提示我只給了我的用戶名,它試圖登錄,但因?yàn)槲覜]有給密碼,它顯示windows登錄屏幕。
短期解決方案,但希望這有所幫助
我是這樣解決這個(gè)問題的:
Windows PC - RDP客戶端方法-將RDP連接保存到.rdp文件,并通過記事本編輯配置,以添加將禁用NLA登錄方法并強(qiáng)制Windows登錄的配置行
注意:添加此配置行后,當(dāng)您雙擊此rdp文件,它將連接到Windows PC,然后顯示登錄頁面,您必須手動(dòng)輸入用戶名和密碼。它將為您下次連接保存用戶,而不是密碼。你將不得不每次都輸入它,但是你將至少通過“請(qǐng)等待”屏幕。
可能的通用解決方案(未經(jīng)測(cè)試,有人請(qǐng)嘗試)-在源PC上進(jìn)行網(wǎng)絡(luò)級(jí)認(rèn)證(NLA)
這種方法來自微軟的支持,我沒有嘗試過
如果我們禁用遠(yuǎn)程win10計(jì)算機(jī)上的NLA,并重新啟動(dòng)有問題的win10,同樣的問題會(huì)發(fā)生嗎?
HKEY _ LOCAL _ MACHINE \ SYSTEM \ current Control set \ Control \ Terminal Server \ win stations \ RDP-Tcp
REG_DWORD:安全層
值:為0更改2
但是啟用或禁用NLA的小復(fù)選框?qū)嶋H上是下面的注冊(cè)表項(xiàng)
HKEY _ LOCAL _ MACHINE \ SYSTEM \ current Control set \ Control \ Terminal Server \ win stations \ RDP-Tcp
REG_DWORD:用戶驗(yàn)證
值:將1更改為0
登錄我的帳戶(XXX)時(shí)遇到了類似的問題。解決方法是:
簡(jiǎn)單的解決方案: 1.使用遠(yuǎn)程桌面連接管理器RdcMan(sysinternals)登錄掛起的會(huì)話 2.選擇菜單:會(huì)話>注銷服務(wù)器(或:會(huì)話>列出會(huì)話>注銷) 遠(yuǎn)程重啟(winRM、RPC)或在目標(biāo)計(jì)算機(jī)上禁用NLA不需要其他訪問權(quán)限
使用Linux系統(tǒng)下的xfreerdp連接,可以連接,然后重啟其他客戶端連接。
我覺得可能是客戶端的一些連接選項(xiàng)造成的,嘗試連接后沒有復(fù)發(fā)。具體原因不知道。
網(wǎng)絡(luò)位置感知服務(wù)從automatic 改成 automatic (delayed start)
1)打開Powershell, 運(yùn)行以下命令(小辣椒高效Office新測(cè)成功)
query user /server:<你的服務(wù)器名或IP>
2)記住被卡住(請(qǐng)稍候)的session ID。
3)再執(zhí)行
reset session <SESSION ID> /server:<你的服務(wù)器名或IP>
這樣就可解決了,可以寫成一個(gè)通用的ps腳本來執(zhí)行
最好的習(xí)慣是用完遠(yuǎn)程就登出Sesseion, 避免出現(xiàn)這種情況
推薦 2、5、6、8、9 、12 這幾種方法
花了3個(gè)小時(shí)搜集了最全的遠(yuǎn)程卡死(請(qǐng)稍候)的最全解決辦法。希望對(duì)您有所幫助。
也可收藏 點(diǎn)贊及關(guān)注我們