Скоро диплом помогите, кто может

Тема в разделе "Delphi - FAQ", создана пользователем Wertil, 22 мар 2005.

Статус темы:
Закрыта.
  1. Wertil

    Wertil Гость

    У меня проблема. нужно написать прогу на Delphi чтобы она выводила составляющие компоненты ПК.
    например: кол-во памяти и т.д. ,процессор.
     
  2. Barmutik

    Barmutik Гость

    Так нужно написать или подсказать как писать?

    Ну например для памяти: GlobalMemoryStatus
     
  3. Wertil

    Wertil Гость

    если у кого-то есть исходники то пишите буду рад
     
  4. Wertil

    Wertil Гость

    вообще нужен исходный текст
     
  5. Barmutik

    Barmutik Гость

    Тогда прямая дорога на сайты и поиск разных компонент которые выдают кучу инфы о компьютере и железе ...
     
  6. Wertil

    Wertil Гость

    Вот эта ф-я GlobalMemoryStatus какие у нее параметры???
     
  7. Barmutik

    Barmutik Гость

    Прямая дорога в MSDN! ну или хотя бы в банальный Delphi MS SDK Help...
     
  8. Wertil

    Wertil Гость

    Дело в том что у нас в инстетуте не установлен MSDN
     
  9. Barmutik

    Barmutik Гость

    Ну а Delphi установлен? В его help-файлах это тоже есть...
     
  10. Wertil

    Wertil Гость

    У тебя есть что нибудь конкректное по этой теме.????????
     
  11. Wertil

    Wertil Гость

    У кого нибудь есть по програме "Сведения о системе"
     
  12. Barmutik

    Barmutik Гость

    А куда уж конкретнее ? Я же указал Вам на готовую функцию, которая позволяет получить информацию о состоянии памяти в системе...

    Удачи! Интересная попытка написать диплом таким способом...
     
  13. TERRAPOD

    TERRAPOD Гость

    Пожалуста, используются API функции.
    Для delphi требуется минимум изменений. "Интересная попытка написать диплом таким способом..."
    Вот те раз:
    Код (Text):
    #include "stdafx.h"
    #include <conio.h>
    #include <Windows.h>

    int main(void){
    FILE *OutFile;
    int i=1;

    MEMORY_BASIC_INFORMATION MemInfo;
    PVOID BaseAddress=NULL;

     OutFile=fopen("Memory.txt", "w");
    if(OutFile==NULL){
    printf("Unable to create output file...\n\nStrike any key to exit...");
    while(!kbhit());
    return 0;
    }
    fprintf(OutFile,"Карта памяти :\n\n");
    printf("Process started...\n");

    //Вызов VirtualQuery и запись в файл результатов:
    while( VirtualQuery(BaseAddress, &MemInfo, sizeof(MemInfo)) ){
    fprintf(OutFile,"Регион No %i\n",i++);
    fprintf(OutFile," Адресс начала региона : %i\n" ,MemInfo.BaseAddress);  
    fprintf(OutFile," Размер региона    : %i\n" ,MemInfo.RegionSize); 
    fprintf(OutFile," Состояние региона   : ");
    switch (MemInfo.State){
     case MEM_COMMIT :fprintf(OutFile,"Занят (MEM_COMMIT)\n");break;
     case MEM_FREE :fprintf(OutFile,"Свободен (MEM_FREE)\n");break;
     case MEM_RESERVE :fprintf(OutFile,"Зарезервирован (MEM_RESERVE)\n");break;
     default :fprintf(OutFile,"Неопределен (UNDEFINED)\n");
    }
    fprintf(OutFile," Тип региона      : ");
    switch (MemInfo.Type){
     case MEM_IMAGE :
        fprintf(OutFile,"MEM_IMAGE\n");break;
     case MEM_MAPPED :
        fprintf(OutFile,"MEM_MAPPED\n");break;
     case MEM_PRIVATE :
        fprintf(OutFile,"MEM_PRIVATE\n");break;
     default :fprintf(OutFile,"Неопределен (UNDEFINED)\n");
    }
    fprintf(OutFile,"==============================================\n");   
    BaseAddress=PVOID(int(BaseAddress)+int(MemInfo.RegionSize));
    }
    printf("\nDone. File saved to 'Memory.txt' in program's directory\
      \n\nStrike any key to close...");
    while(!kbhit());
    fclose(OutFile);
    return 1;
    }
    Вот те два:
    Код (Text):
    #include "stdafx.h"
    #include <Windows.h>
    #include <conio.h>

    #define DIV 1024
    #define WIDTH 10
    using namespace std;

    char *RTO(char *Str){
    char *Str2=new char[strlen(Str)];
    CharToOem(Str,Str2);
    Str=Str2;
    return Str;
    }

    int _tmain(int argc, _TCHAR* argv[])
    {   SYSTEM_INFO Info;
    MEMORYSTATUS stat;


    GetSystemInfo(&Info);
    printf(RTO("Системная информация: \n"));
     printf(RTO(" OEM ID: %u\n"), Info.dwOemId);
     printf(RTO(" Количество процессоров: %u\n"),Info.dwNumberOfProcessors);
     printf(RTO(" Архитектура процессора: "));
    switch(Info.wProcessorArchitecture){
    case PROCESSOR_ARCHITECTURE_UNKNOWN : printf(RTO("Неизвестен\n"));break;
    case PROCESSOR_ARCHITECTURE_INTEL  :
     printf("INTEL %i\n",Info.wProcessorLevel);break;
    case PROCESSOR_ARCHITECTURE_MIPS  :
     printf("MIPS %i\n",Info.wProcessorLevel);break;
    case PROCESSOR_ARCHITECTURE_ALPHA  :
     printf("ALPHA %i\n",Info.wProcessorLevel);break;
    case PROCESSOR_ARCHITECTURE_PPC   :
     printf("PPC %i\n",Info.wProcessorLevel);break;
    case PROCESSOR_ARCHITECTURE_IA64  :
     printf("IA64 %i\n",Info.wProcessorLevel);break;   
    case PROCESSOR_ARCHITECTURE_AMD64  :
     printf("AMD 64\n");break;
    default : printf(RTO("Неизвестен\n"));
    }

    printf(RTO(" Активная маска процессора: %u\n"),Info.dwActiveProcessorMask);
    printf(RTO(" Размер страницы: %u Кб\n"), Info.dwPageSize);
     printf(RTO(" Минимальный адресс приложения: 0x%lx\n"),Info.lpMinimumApplicationAddress);
     printf(RTO(" Максимальный адресс приложения: 0x%lx\n"),Info.lpMaximumApplicationAddress);
    printf("\n        ***           \n");
    GlobalMemoryStatus (&stat);
    printf(RTO("\nСостояние памяти:\n"));
    printf(RTO(" Процент используемой памяти: %ld%%\n"),stat.dwMemoryLoad);
     printf(RTO(" Всего %*ld Кб физ. памяти\n"),WIDTH, stat.dwTotalPhys/DIV);
     printf(RTO(" Всего %*ld Кб свободной физ. памяти\n"),WIDTH, stat.dwAvailPhys/DIV);
     printf(RTO(" Всего %*ld Кб файла подкачки\n"),WIDTH, stat.dwTotalPageFile/DIV);
     printf(RTO(" Всего %*ld Кб файла подкачки доступно\n"),WIDTH, stat.dwAvailPageFile/DIV);
     printf(RTO(" Всего %*ld Кб виртуальной памяти\n"),WIDTH, stat.dwTotalVirtual/DIV);
     printf(RTO(" Всего %*ld Кб свободной виртуальной памяти\n"),WIDTH, stat.dwAvailVirtual/DIV);
    while(!_kbhit());

    return 0;
    }
    :(
     
  14. TERRAPOD

    TERRAPOD Гость

    Написано коряво, но разобраться можно :(
     
Загрузка...
Похожие Темы - Скоро диплом помогите
  1. swyatogor
    Ответов:
    48
    Просмотров:
    2.086
  2. aameno2
    Ответов:
    21
    Просмотров:
    1.198
  3. phil124
    Ответов:
    0
    Просмотров:
    1.117
  4. JAR
    Ответов:
    0
    Просмотров:
    1.445
  5. rinsk
    Ответов:
    6
    Просмотров:
    2.754
Статус темы:
Закрыта.

Поделиться этой страницей