1. Générez un mot de passe aléatoire (devrait être plus utile) function CreatePass:String;const MAX_LEN=10;var i: integer; s: string;begin Randomize; s:='ABCDEFGHIJKLMNOPQRSTUVWXYZ'+'abcdefghijklmnopqrstuvwxyz'+ '0123456789'; := ''; pour je := 0 à MAX_LEN-1 do start Résultat := Résultat + s[Random(Length(s)-1)+1]; end;end;2. Convertir les nombres décimaux en chiffres romains function DecToRoman(iDecimal: longint): string;const aRomans : tableau[1..13] de chaîne = ('I', 'IV', 'V', 'IX', 'X', 'XL', 'L', 'XC', 'C', 'CD', 'D', 'CM', 'M'); aArabes : tableau[1..13] d'entier = (1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000);var i : entier;commencer le résultat := ''; for i := 13 jusqu'à 1 do while (iDecimal >= aArabics[i]) do start iDecimal := iDecimal - aArabics[i]; result := result + aRomans[i]; end;end;PRocedure TForm1.Button1Click(Sender : TObject);begin showmessage(DecToRoman(5));end;3. Le formatage de l'affichage des entiers à l'aide de la fonction FormatFloat peut résoudre bon nombre de vos problèmes. Par exemple, formatez 1 200 000 en procédure de sortie 1 200 000 TForm1.Button1Click(Sender: TObject);var i:integer; s:string;begin i := 1200000; FormatFloat('#,0', i); );fin;4. Vous pouvez utiliser la fonction ClearCommError pour déterminer si le port série a reçu des données. Les éléments cbInQue et cbOutQue dans la structure TcomStat peuvent aider à réaliser le jugement. 5. Convertissez la couleur RVB en fonction de classe TColor RGBToColor(R,G,B:Byte): TColor;begin Result:=B Shl 16 Ou G Shl 8 Ou R;end;6. Expéditeur : TObject);var Couleur : TColor ; R, G, B : Integer ;begin Color := clBlack ; := Couleur et $FF; G := (Couleur et $FF00) shr 8; B := (Couleur et $FF0000) shr 16; showmessage(inttostr(R)); (B));fin;7. La boîte de dialogue Parcourir l'ordinateur utilise ShlObj;fonction BrowseForComputer(const winhandle : THANDLE; const title : string) : string;var BrowseInfo: TBrowseInfo; IDRoot: PItemIDList; Chemin : tableau[0..MAX_PATH] de Char;begin SHGetSpecialFolderLocation(winHandle, CSIDL_NETWORK, IDRoot(@BrowseInfo, SizeOf(TBrowseInfo)); ZeroMemory (@chemin, MAX_PATH); BrowseInfo.hwndOwner := winhandle; BrowseInfo.pidlRoot := IDRoot; BrowseInfo.lpszTitle := PChar(title); BrowseInfo.pszDisplayName := @path;