Como complemento a la aplicación que publiqué hace unos días, os presento esta otra que queda vigilante a que introduzcamos una unidad extraible avisando y limpiandola si encuentra la palabra "recycler" en la ruta de un acceso directo del directorio raiz. Se puede modificar para buscar otras palabras, además de ésta.
El programita es casi idéntico que el anterior, pero no tiene interface gráfica, es oculto y puedeinstalarse en el registro automáticamente si teneis WinXP y manualmente en caso posterior.
El corazón de este programa es una ventana oculta para recibir los mensajes que envía el sistema para indicar la inserción de los medios.
LRESULT __stdcall WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { if(uMsg == WM_USER_SHELLCHANGED){ switch(lParam & 0x7FFFFFF){ case SHCNE_DRIVEADD: LPITEMIDLIST *ppidl = (LPITEMIDLIST*)wParam; char Path[MAX_PATH]; SHGetPathFromIDList(ppidl[0], Path); CleanDrive(Path); break; } } return DefWindowProc(hWnd, uMsg, wParam, lParam); }
El resto del código es muy similar al anterior.
Saludos.