用于测试uiAccess值的Winapi函数

用于测试uiAccess值的Winapi函数,winapi,Winapi,大家好,我正试图在winapi手册中找到一个函数,该函数允许我测试我的程序是否具有uiAccess true,是否有这样的函数?没有这样的函数。。而且uiAccess必须在应用程序的UAC清单中静态指定,那么为什么需要在运行时动态测试它呢?谢谢@RemyLebeau有没有一个函数可以测试程序是否是服务?我试图帮助Firefox上使用jsctypes的用户发送输入特殊的组合键,如ctrl+alt+del和alt+shift,以改变语言,但这并没有做到,似乎只有当它的uiaccess或服务可用时才有

大家好,我正试图在winapi手册中找到一个函数,该函数允许我测试我的程序是否具有uiAccess true,是否有这样的函数?

没有这样的函数。。而且uiAccess必须在应用程序的UAC清单中静态指定,那么为什么需要在运行时动态测试它呢?谢谢@RemyLebeau有没有一个函数可以测试程序是否是服务?我试图帮助Firefox上使用jsctypes的用户发送输入特殊的组合键,如ctrl+alt+del和alt+shift,以改变语言,但这并没有做到,似乎只有当它的uiaccess或服务可用时才有效。如果你想知道发生了什么,我在这里帮助他:直接作为服务运行程序的API编码要求有一个根本的区别。程序应该通过其编码方式和调用的API隐式地知道它是一个服务。但是,例外情况是,如果您正在编写一个普通控制台应用程序,然后使用
srvany.exe
或类似工具将其作为服务运行。在这种情况下,如果不枚举父进程/子进程层次结构等,应用程序就无法轻松检测到它正在作为这样的服务运行。但同样,尝试这样做是毫无用处的,因为用户模式的应用程序首先不应该发出系统保留的击键,如
CTRL-ALT-DEL
ALT-SHIFT
。所以真正的问题是,为什么其他人需要发送这些按键呢。他真正想做的是什么,其他官方API无法做到?谢谢@RemyLebeau,我在这里找到了这个函数:它说
如果应用程序不是作为服务运行的,它必须以当前用户或本地系统帐户的身份运行才能调用SendSAS
那么这是否意味着如果应用程序被用户关注,我可以调用此函数,然后
SendInput
应该可以工作?