Skip to content

Commit abb5ddc

Browse files
authored
Update README.md
1 parent 3337665 commit abb5ddc

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,34 @@
11
# dwmbsc
22
el basic themer más ligero y tal vez menos seguro que lo demás
3+
4+
![image](https://github.com/LuSlower/dwmbsc/assets/148411728/61e9273f-1c22-4144-a905-4a301310bc2f)
5+
6+
tal vez te preguntes por que hay dos ejecutables?
7+
8+
bien, esto tiene una explicación
9+
es algo simple, en lugar de sondear GetForegroundWindow() como la mayoria pensé que un SHELL HOOK
10+
para inyectar el HOOKPROC y MSDN dice:
11+
12+
> SetWindowsHookEx se puede utilizar para inyectar una DLL en otro proceso. No se puede inyectar una DLL de 32 bits en un proceso de 64 bits y no se puede inyectar una DLL de 64 bits en un proceso de 32 bits. Si una aplicación requiere el uso de enlaces en otros procesos, se requiere que una aplicación de 32 bits llame a SetWindowsHookEx para inyectar una DLL de 32 bits en procesos de 32 bits, y una aplicación de 64 bits llame a SetWindowsHookEx para inyectar una DLL de 64 bits. DLL en procesos de 64 bits. Las DLL de 32 y 64 bits deben tener nombres diferentes.
13+
14+
15+
y bueno esto generaria un descanso a la CPU, ya que evitaria sondear constantemente a esta función
16+
y Sleep no es algo en lo que se deba confiar en Windows
17+
18+
> Debido a que los ganchos se ejecutan en el contexto de una aplicación, deben coincidir con el "bitness" de la aplicación. Si una aplicación de 32 bits instala un enlace global en Windows de 64 bits, el enlace de 32 bits se inyecta en cada proceso de 32 bits (se aplican los límites de seguridad habituales). En un proceso de 64 bits, los subprocesos todavía están marcados como "enganchados". Sin embargo, debido a que una aplicación de 32 bits debe ejecutar el código de enlace, el sistema ejecuta el enlace en el contexto de la aplicación de enlace; específicamente, en el hilo que llamó SetWindowsHookEx . Esto significa que la aplicación de enlace debe continuar enviando mensajes o podría bloquear el funcionamiento normal de los procesos de 64 bits.
19+
20+
## en que se diferencia de basicthemer5?
21+
22+
* 13MB de aproximadamente de total bytes (basicthemer5) frente a 2.5MB (entre los dos ejecutables de dwmbsc)
23+
* no hay sondeo de funciones, solo hay un while en cada proceso para evitar que el HOOKPROC bloquee su sistema
24+
* cada ejecutable depende de cada uno de los DLLs para que pueda inyectar correctamente el HOOKPROC a cada proceso dependiendo del contexto de su arquitectura
25+
* añadi un hootkey a dwmbsc32.exe (CTRL + SHIFT + F1) esto restaurara las politicas aplicadas a cada atributo de dwm
26+
27+
## COMO USAR?
28+
29+
* abre dwmbsc32.exe, este a su vez abrira el otro ejecutable (dwmbsc64.exe) como un proceso hijo, cuando presiones el hootkey automaticamente se cerrara junto a su proceso padre
30+
31+
## DISFRUTAR
32+
33+
## DERECHOS DE AUTOR Y LICENCIA
34+
[LICENCIA](LICENSE)

0 commit comments

Comments
 (0)