Table des matières
Microsoft Windows
Voir aussi:
Sur BernieClub ya quelques bons trucs.
Sur la sécurité de Windows, sur ses DLLs et autres astuces de la Base de Registre.
http://users.skynet.be/BernieClub/index.html
Windowing
The following sections describes the elements of an application with a Windows-based graphical user interface.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing.asp
Informations sur le Registre Windows pour utilisateurs expérimentés
Tools
Maintenance:
- MyDefrag http://www.mydefrag.com
- CCleaner https://www.piriform.com/ccleaner
Drivers and others stranges tools (with source)
FileTypesMan
Permet de modifier les actions et autres réglages pour les types de fichier sans utiliser RegEdit.
PowerShell
nLite
nLite - Windows Installation Customizer - Installation windows personnalisée.
Permet des régler (pré-régler) une tonne d'options pour l'installation, notamment d'ajouter des drivers.
Unlocker
http://ccollomb.free.fr/unlocker
Unlocker est la solution pour régler leur compte aux messages du genre :
- Cannot delete file: Access is denied
- There has been a sharing violation.
- The source or destination file may be in use.
- The file is in use by another program or user.
- Make sure the disk is not full or write-protected and that the file is not currently in use.
Fournis avec Window
netsh
> netsh firewall show state
wmic
> wmic service list > wmic process list /FORMAT:csv
Tips
Registry
Configuring the Registry Size Limit
Open your registry and find the key below.
Create new DWORD value, or modify the existing value, named 'RegistrySizeLimit' and set the value to equal the desired RSL in bytes.
RegistrySizeLimit must have a type of REG_DWORD, and a data length of 4 bytes, or it is ignored. If you set the value RegistrySizeLimit to less than 4 megabytes (MB), it is forced up to 4 MB. If you set it to greater than about 80 percent of the size of paged pool, it is set down to 80 percent of the size of paged pool (it is assumed that paged pool is always more than 5 MB). If you set it to 0xffffffff the maximum size allowable (or 80 percent of paged pool, up to 102 MB) is set.
Shutdown and restart Windows for the change to take effect.
J'ai eu le message “Le système a atteint la taille maximale pour le la partie système du registre. Les requêtes de stockage supplémentaires seront ignorées.”. J'ai essayé plein de trucs (reg clean,RegistrySizeLimit, …), mais rien. En fait c'était COMODO Internet security qui écrit toutes ses règles dans le régistre système “HKEY_LOCAL_MACHINE\SYSTEM\Software\COMODO\…”
Import Export automatique d''informations de la base de registre
Il est possible d'automatiser l'export/import d'une ruche de la base de registre.
Pour l'export, 2 options sont possibles: en mode normal (commutateur “-e” → Windows Registry Editor Version 5.00) ou en mode compatibilité (commutateur “-a” → REGEDIT4). Il suffit d'utiliser la commande REGEDIT accompagnée du commutateur choisi, suivi du fichier de destination et de la ruche à exporter. L'import se fait quant à lui simplement à l'aide du commutateur “-s” suivi du fichier comportant les informations à fusionner.
Export:
REGEDIT /e export5.reg RACINE\Cle REGEDIT /a export4.reg RACINE\Cle
Import:
REGEDIT /s import.reg
Partage de fichier
Partage et sécurité des fichiers sous Windows XP, Un petit guide pratique, notamment comment activé le partage de fichiers avec protection par utilisateur/mot de passe.
IWin32Window wrapper class
Par exemple la méthode Form.Show(IWin32Window) ne compile pas quand on l'appele de cette façon :
aForm.Show(anotherFrom.Handle)
L'erreur du compilateur est :
Argument '1' : impossible de convertir de 'System.IntPtr' en 'System.Windows.Forms.IWin32Window'
Pour résoudre le problème il faut écrire un petit wrapper pour IWin32Window :
using System; using System.Windows.Forms; namespace LocalNetworkSupervisor { public class IWin32WindowWrapper : IWin32Window { private IntPtr _hwnd; public IWin32WindowWrapper(Form form) { _hwnd = form.Handle; } public IWin32WindowWrapper(IntPtr handle) { _hwnd = handle; } public IntPtr Handle { get { return _hwnd; } } } }
Que l'on pourra utiliser de cette façon :
f.Show(new IWin32WindowWrapper(this.Handle)); // ou plus directement : f.Show(new IWin32WindowWrapper(this));
Réseau
Services et ports réseau
Firewall
l'état du firewall en ligne de commande (cmd.exe) avec la commande “netsh” :
> netsh firewall show state
Explication sur les clés de régistre pour le Firewall: How to Configure Windows Firewall in Windows XP
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy
Bloquer les pubs Windows Live Messenger
Bloquer les pubs de Windows Live Messenger très simplement: il vous suffit d'ajouter les 2 lignes suivantes dans le fichier C:\WINDOWS\system32\drivers\etc\hosts :
127.0.0.1 rad.msn.com 127.0.0.1 rad.live.com
Il ne vous reste plus qu'à redémarrer Messenger et les pubs auront disparues.
Déclencher écran de veille
Raccourci : windows + L
Par code :
# Dans un module : # ---------------------- Public Const WM_SYSCOMMAND = &H112& Public Const SC_SCREENSAVE = &HF140& Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long # # Dans le bouton de votre choix : # ---------------------------------------- Call SendMessage(Me.hWnd, WM_SYSCOMMAND, SC_SCREENSAVE, 0&)
Explore from here
REGEDIT4 [HKEY_CLASSES_ROOT\Directory\shell\Explore] @="Explore from here" [HKEY_CLASSES_ROOT\Directory\shell\Explore\command] @="explorer.exe /e,/root,/idlist,%i"
Command prompt here
REGEDIT4 [HKEY_CLASSES_ROOT\Directory\shell\CommandPrompt] @="Command prompt here" [HKEY_CLASSES_ROOT\Directory\shell\CommandPrompt\command] @="cmd.exe /k cd \"%1\" "
Télécharger le script command_prompt_here.reg.txt et supprimer l'extension .txt pour qu'il devienne un .reg, double-cliquer le fichier pour modifier la base de registre.
Listing here
Pour générer un listing des fichiers et répertoire d'un dossier, cette config ajoute dans le menu contextuel d'un répertoire le menu “Listing here”. Le résultat est écrit dans le répertoire dans le fichier Listing.txt.
REGEDIT4 [HKEY_CLASSES_ROOT\Folder\shell\Listing] @="Listing here" [HKEY_CLASSES_ROOT\Folder\shell\Listing\command] @="cmd.exe /c dir /og /on /-C >__Listing__.txt"
Options Explorer.exe
Preview (aperçu) des fichiers images
C:\WINDOWS\system32\shimgvw.dll: Aperçu des images et des télécopies Windows
Registre :
- bmpfile, jpegfile, giffile, pngfile …
Après l'installation de Fireworks8 toutes les extensions ont perdu leur default REG_SZ (bmpfile, jpegfile, …) qui ont été remplacées par les types de Fireworks :
- Fireworks.bmp, Fireworks.Doc (pour png), Fireworks.jpeg, Fireworks.gif, …
Fichiers hors connexion
Un excellent tuto sur microsoft TechNet explique tous les rouages de la gestion de fichiers hors-connexion (Client-Side Caching (CSC)).
Lister les processus en ligne de commande
Utiliser la commande “tasklist” dans une console pour avoir la liste des processus. Pour avoir le détails des options disponibles : “tasklist /?”. Par exemple “tasklist /SVC” permet de voir ce que gère les fameux processus “svchost.exe”.
On peut aussi “killer” un processus avec “taskkill”. Pour avoir le détails des options disponibles : “taskkill /?”.
taskkill /pid <NUMERO_PID>
Sinon il y a toujours l'excellent “Process Explorer”.
Performances
Editeur stratégie de groupe “gpedit.msc” dans lequel il y a des tonnes de paramètres.
Activer le processeur de la carte réseau
Si vous possédez une interface réseau évoluée (moyenne à haut de gamme), elle intègre probablement un processeur dédié permettant de décharger le processeur de l'ordinateur de certains traitements réseaux (encryptage IPSec, calculs de checksum TCP, etc.). Sachez que par défaut celui-ci est desactivé par Windows. Vous pourrez gagner un peu de ressource processeur en l'activant.
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] "DisableTaskOffload"=dword:00000000
Il faut redémarrer votre ordinateur pour que les changements soient pris en compte.
Voir:
- DisableTaskOffload on Microsoft TechNet.
Optimisation File System
Désactiver la génération des noms courts (8.3)
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] "NtfsDisable8dot3NameCreation"=dword:00000001
Disabling Last Access Time Stamps
Voir http://msdn.microsoft.com/en-us/library/ms940846(WinEmbedded.5).aspx
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] "NtfsDisableLastAccessUpdate"=dword:00000001 "NtfsDisableLastAccess"=dword:00000001
System Cache
Si vous avez plus de 256 MB de RAM, mettez cette valeur à 1 pour accélérer les performances de cache disque. Si vous avez moins, vous pouvez essayer mais vous n'obtiendrez pas de gain, voir une perte de performances.
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management] "LargeSystemCache"=dword:00000001
Moteur de recherche
Windows intègre un indexeur (Index Server).
Comparaison entre Index Server et Site Server :
http://support.microsoft.com/default.aspx?scid=kb;fr;468308
Pour lui ajouter la compréhension des fichiers PDF il faut le filtre spécialement réalisé par Adobe : Adobe PDF IFilter v6.0
http://www.adobe.com/support/downloads/detail.jsp?ftpID=2611
Accès par ADO.NET
Vous pouvez accéder à l'index via ADO.NET (c'est un OLEDB Provider nommé MSIDXS).
Voir un exemple ici: http://www.c-sharpcorner.com/Code/2004/Jan/UsingIndexServer.asp
Index Server, OleDb et les DataSets :
http://www.labo-dotnet.com/Articles/ADOdotnet/Index%20Server,%20OleDb%20et%20les%20DataSets/0/22.aspx
Pour IIS
Le moteur d’indexation de Microsoft s’intègre parfaitement avec son serveur HTTP.
Revue de détail des paramètres clés à configurer.
http://www.zdnet.fr/builder/web_design/conception_site/0,39021086,39124356,00.htm
[sécurité] Limitation des droits pour une appli
Il n'est pas toujours possible de travailler avec des droits limités, parce que certains traitements nécessitent des droits élevés. Il serait alors bien de pouvoir limiter les droits de certains programmes, notamment ceux qu'on utilise pour communiquer et qui sont donc souvent attaqués en premier. Cette possibilité existe maintenant avec un petit applicatif qui peut être téléchargé depuis le site Internet de Microsoft. Après installation de ce petit programme, vous pouvez lancer des programmes comme Internet Explorer ou Outlook avec des droits limités tout en étant connecté en tant qu'administrateur. Ici on vous explique ou télécharger, comment installer et comment utiliser ce petit programme très intéressant.
Vous pouvez télécharger le programme sous cette adresse :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dncode/html/secure11152004.aspCode