此弹出窗口表示,如果我保留复制的最后一项,则可能需要更长时间才能退出。但是,在每种情况下,单击弹出窗口都会使退出时间更长,因为我必须移动鼠标才能单击另一个弹出框,而实际上,我复制的内容从不会拖慢我的计算机速度(即使我这样做了,多花几秒钟退出也不会让我感到困扰)。所以,我想禁用此“功能”,但找不到这样做的方法。有人有什么解决方案吗?
答案1
遗憾的是,您无法关闭它。此请求 -禁用“是否要保留最后复制的项目?”对话框的选项- 在 Uservoice 上创建后同样的问题正如您在 Microsoft 论坛上所问的那样。但是,截至撰写此答案时,Microsoft 尚未提供禁用它的选项。
微软论坛提供的唯一解决方法是在关闭应用程序之前复制一个字符。
答案2
Dim wa 作为对象
' 在创建对象之前
如果 wa 为 Nothing,则设置 wa = CreateObject("word.application")
万一
'复制粘贴数据后
华人退出假新闻
设置 wa = Nothing
'这对我来说可以避免弹出窗口的发生
答案3
这个 AutoHotkey v2 脚本解决了这个问题。
最新版本可以在 GitHub 上找到:https://github.com/karolzlot/office-keep-last-item
如果你发现任何错误,请打开问题。也欢迎拉取请求!
; This is AHK v2 script, it won't work on AHK v1.
#SingleInstance Force
#Warn ; Enable warnings to assist with detecting common errors.
SendMode "Input" ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir A_ScriptDir ; Ensures a consistent starting directory.
SetTitleMatchMode(1) ; 1 = A window's title must start with the specified WinTitle to be a match.
; All translations can be found on https://www.microsoft.com/en-us/language/Search?&searchTerm=You%20placed%20a%20picture%20on%20the%20Clipboard.&langID=591&Source=true&productid=undefined
; English language
phrase1:= "You placed a picture on the Clipboard. Do you want this picture to be available to other applications after you quit"
phrase2:= "Do you want to keep the last item you copied?\n\nIf you do, it may take a bit longer to exit."
phrase_yes:= "Yes"
; ; Polish language
; phrase1:= "W Schowku znajduje się obraz. Czy ten obraz ma być dostępny dla innych aplikacji po zakończeniu pracy z programem"
; phrase2:= "Czy chcesz zachować ostatni skopiowany element?\n\nJeśli tak, zakończenie działania może potrwać trochę dłużej."
; phrase_yes:= "Tak"
Loop
{
HWND := WinWaitActive("Microsoft ")
window_text := WinGetText("ahk_id " HWND)
if InStr(window_text, phrase1, "Off") or InStr(window_text, phrase2, "Off")
{
Controls := WinGetControls(HWND)
for control in Controls
{
MsgBox(control " " ControlGetText(control)) ; for debugging, comment out this line if it works ok
if InStr(control, "Button") ; check if control is of type button
{
if InStr(ControlGetText(control), phrase_yes)
{
MsgBox("Button found") ; for debugging, comment out this line if it works ok
ControlClick(control)
Sleep(1000)
break
}
}
}
}
else
{
; MsgBox "Not found" ; for debugging, comment out this line if it works ok
Sleep(1000)
}
}
答案4
即使更好,为什么要有它?我们大多数人都坐在拥有 16G 到 64G RAM 的机器上,这些机器配有超线程四核 CPU 和 SSD 驱动器。真的吗?我们担心保存时间会延长一纳秒?用户需要更长的时间才能被打断,弄清楚这个无用的弹出窗口是什么,然后单击“确定”。只需将其删除即可。不要在更多设置和选项上浪费时间。有什么意义?