Es posible, y así lo hice en una aplicación que escribí hace unos 10 años, esconder archivos o carpetas del explorador o del sistema a base de usar la técnica de Hook a la API o desde el Kernel. El primer caso requiere más código y actuar sobre varias APIs, incluso inyectar todas las aplicaciones activas. En el segundo, dependemos mucho de la versión del S.O. En ambos casos se requiere saber muy bien lo que se hace y estar preparado para actualizar el código. Como ejemplo comento que el explorer usaba un ListView para visualizar archivos. Esas ventanas son de la clase SysListView32. En la actualidad usa ventanas de la clase DirectUIHWND. Esto hace que inevitablemente tengamos que actualizar el código para que vuelva a funcionar.
La forma más directa y sencilla de proteger archivos o carpetas ya se ha apuntado en el hilo. Es el control de los permisos. Quizás en este caso una estrategia pueda ser instalar un servicio que se ejecutará al arranque con privilegios System. Los actuales sistemas operativos Windows no permiten la interacción con los servicios a través de ventanas de escritorio. Esta limitación puede solventarse comunicándonos con códigos de control, o red... Un servicio puede ejecutar otra aplicación en modo usuario (
Lanzar una aplicación GUI desde un servicio) que tenga permisos sobre las carpetas...
Lo que hay que tener claro es el diseño global de la aplicación, En el esquema Servicio - App GUI, la APP GUI debería servir sólo como ventana de configuración y el Servicio debería ser el sistema de control, de forma que cuando el sistema se ejecute por un usuario sin permisos Paternos, sea el servicio el único que se ejecuta realizando todas las tareas de control, ya que en este caso no hace falta ninguna aplicación de ventana.
Esto son ideas que pueden servir, o no, para diseñar un sistema de control parental o cualquier otro que tenga un mecanismo de acción similar. Dependiendo del tipo de control, podemos llegar a eliminar el escritorio y sustituirlo por nuestra App. Esta visión del problema es muy restrictiva y pudiera ser la base de un "ciber-café" o algo similar.
Si tus restricciones se van a hacer actuando en las políticas de usuario a través del registro de Windows, piensa que un usuario listo puede escribir una app que las cambie con lo que tendrás que disponer de un sistema de vigilancia de cambios en el registro (
Monitorizando el registro de Windows)
.
En definitiva, una cosa son las ideas de que queremos controlar en el usuario y otra es cómo nos las vamos a arreglar para que funcione y no lo desactive. Sobre la segunda cuestión se puede estar discutiendo toda la vida.
Saludos.