۲۱-شهریور-۱۳۹۶, ۱۵:۱۲:۵۶
۲۱-شهریور-۱۳۹۶, ۱۵:۵۹:۲۱
چطوری میشه چک کرد که تابع با موفقیت اجرا شده؟
بوسیله یخروجیش :
_Out_ LPSYSTEM_INFO lpSystemInfo
مثال :C++
بوسیله یخروجیش :
_Out_ LPSYSTEM_INFO lpSystemInfo
مثال :C++
کد:
#include <windows.h>
#include <stdio.h>
#pragma comment(lib, "user32.lib")
void main()
{
SYSTEM_INFO siSysInfo;
// Copy the hardware information to the SYSTEM_INFO structure.
GetSystemInfo(&siSysInfo);
// Display the contents of the SYSTEM_INFO structure.
printf("Hardware information: \n");
printf(" OEM ID: %u\n", siSysInfo.dwOemId);
printf(" Number of processors: %u\n",
siSysInfo.dwNumberOfProcessors);
printf(" Page size: %u\n", siSysInfo.dwPageSize);
printf(" Processor type: %u\n", siSysInfo.dwProcessorType);
printf(" Minimum application address: %lx\n",
siSysInfo.lpMinimumApplicationAddress);
printf(" Maximum application address: %lx\n",
siSysInfo.lpMaximumApplicationAddress);
printf(" Active processor mask: %u\n",
siSysInfo.dwActiveProcessorMask);
}
۲۱-شهریور-۱۳۹۶, ۲۳:۲۵:۱۲
مرسی، ولی اگه من بخوام تو بدافزار ازش استفاده کنم دیگه نمیتونم مطمن بشم که اطلاعات درست میده!
یا منظور شما اینه که اگه تابع درست اجرا نشه، متغیر های داخل استراکچر SYSTEM_INFO خالی (NULL) هست ؟
یا منظور شما اینه که اگه تابع درست اجرا نشه، متغیر های داخل استراکچر SYSTEM_INFO خالی (NULL) هست ؟
۲۲-شهریور-۱۳۹۶, ۱۴:۱۶:۱۶
اطلاعات سیستم جاری رو میده ک لیستش توی SYSTEM_INFO
هست!!
تنها در دو حالت حرف شما صحت داره :
1-سیستم عامل زیر ویندوز 2000
2- اگر برنامه 64 بیتی باشه
برای دریافت اطلاعات دقیق برای برنامه 64 بیتی از تابع GetNativeSystemInfo function استفاده کن
این تابع معادل GetSystemInfo در سیستم های 32 بیتی هست
[url=http://msdn.microsoft.com/en-us/library/windows/desktop/ms724340%28v=vs.85%29.aspx][/url]