我写了一个打印windows剪贴板内容的小程序。
只要我以自己的身份登录,程序在我的计算机上运行正常,但如果我以其他用户身份登录并尝试使用该程序,则无法将剪贴板数据复制到我的程序中。如果我在其他PC上安装它,即使我以管理员身份登录,也会遇到同样的问题。
以下是我正在使用的代码:
Private Sub BtnPrint_Click(sender As Object, e As EventArgs) Handles BtnPrint.Click
If Clipboard.GetDataObject().GetDataPresent(DataFormats.Rtf) Then
RTBDisplay1.Rtf = Clipboard.GetDataObject().GetData(DataFormats.Rtf)
Else
RTBDisplay1.Text = "The clipboad does not contain any text"
End If
PrintDocument1.DefaultPageSettings.Margins.Left = 1
PrintDocument1.DefaultPageSettings.Margins.Right = 1
If PrintDialog1.ShowDialog() = DialogResult.OK Then
PrintDocument1.Print()
End If
Clipboard.Clear()
End Sub
我使用已发布的文件来设置程序,并使用Inno Setup创建安装程序,程序安装正确并在我的计算机和其他计算机上正常运行,但它只是不知道剪贴板数据。
我尝试将数据格式更改为文本并从记事本中复制,但即使这样也无效。