Forum Discussion
Anonymous
10 years agoWhy is the OCULUS Runtime attempting to access to a foreign memory of the running application?
If some protection of the client memory was set then the Oculus
fails to connect and we see a black screen and the sdk contantly returns
a focus loss state. For example, the following code
SetSecurityInfo)(currentProcessHandle, SE_KERNEL_OBJECT, PROTECTED_DACL_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
NULL, NULL, pAcl, NULL)
completly breaks oculus. So, How can i fix it? Memory protection is often used in
mmo and online games and removing it is highly undesirable.
fails to connect and we see a black screen and the sdk contantly returns
a focus loss state. For example, the following code
SetSecurityInfo)(currentProcessHandle, SE_KERNEL_OBJECT, PROTECTED_DACL_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION,
NULL, NULL, pAcl, NULL)
completly breaks oculus. So, How can i fix it? Memory protection is often used in
mmo and online games and removing it is highly undesirable.
2 Replies
- DragonGeo2ExplorerThe Oculus runtime probably needs to acquire your process handle with (at the very least) the SYNCHRONIZE access right (so that they know when your VR program has started or exited). They probably also try to use the PROCESS_QUERY_INFORMATION access right to read your process' exit code. They may also want to use the PROCESS_SUSPEND_RESUME and PROCESS_TERMINATE access rights in the case that the Oculus Store can suspend and terminate your process when you switch back and forth from the Oculus Store and your application. Depending on how their priority elevation for Windows works (since your VR program is not necessarily the foreground window, they have alternate mechanisms to elevate your VR app's process priority), they may also require the PROCESS_SET_INFORMATION access right.
In any case, try playing around with the process handle protections that you set up in your ACL. You can start with an empty ACL that allows anything, and slowly one-by-one add back the restrictions until you find out which ones the main Oculus runtime doesn't like. You should post which ones those are here so that other developers will know which ones to avoid using in the future, and we can have a conversation about why those are needed with Oculus staff about it too once you have additional information. - wbskProtegeI'm curious if that could have effect on custom DRM or anti-cheat measures in future?
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 2 years ago