Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Minh đang thắc mắc về môn HDH

  1. #1
    Ngày gia nhập
    11 2017
    Bài viết
    3

    Mặc định Minh đang thắc mắc về môn HDH

    Đề tài của mình là Xây dựng chương trình thực hiện các chức năng sau: Đưa ra màn
    hình Ổ đĩa, tên ổ đĩa, số serial, trạng thái, định dạng, dung lượng, còn
    trống, số byte /sector, số sector/cluster. ( c và c# đều được )

    Ở đây mình tìm trên C# có thì được một số hàm in ra được thông tin bộ nhớ, định dạng còn về SECTOR hay CLUSTER thì k có.
    Trong group có ace nào hiểu sâu về phần này giúp mình với
    Đã được chỉnh sửa lần cuối bởi leminhdut17 : 11-11-2017 lúc 01:48 AM. Lý do: read hard drive, c# ,c++, sector, system.io

  2. #2
    Ngày gia nhập
    08 2017
    Bài viết
    348

    Trích dẫn Nguyên bản được gửi bởi leminhdut17 Xem bài viết
    Đề tài của mình là Xây dựng chương trình thực hiện các chức năng sau: Đưa ra màn
    hình Ổ đĩa, tên ổ đĩa, số serial, trạng thái, định dạng, dung lượng, còn
    trống, số byte /sector, số sector/cluster. ( c và c# đều được )

    Ở đây mình tìm trên C# có thì được một số hàm in ra được thông tin bộ nhớ, định dạng còn về SECTOR hay CLUSTER thì k có.
    Trong group có ace nào hiểu sâu về phần này giúp mình với
    Bác sẽ giúp con với điều kiện, các thông số con hỏi có ý nghĩa gì trong cuộc sống.

  3. #3
    Ngày gia nhập
    08 2017
    Bài viết
    348

    C++ Code:
    1. #include <stdio.h>
    2. #include <windows.h>
    3.  
    4. extern "C"{
    5.     __declspec(dllimport) bool GetDiskInfo();
    6.     __declspec(dllimport) char* GetSerialNumber(int i);
    7.     __declspec(dllimport) char* GetModelNumber(int i);
    8.     __declspec(dllimport) char* GetRevisionNumber(int i);  
    9.  
    10.     __declspec(dllimport) UINT GetBufferSize(int i); //@ UINT in windows.h 
    11.     __declspec(dllimport) unsigned __int64 GetDiskSize(int i);
    12. }
    13.  
    14. int main(){
    15.     long nDrv = GetDiskInfo();
    16.     printf("\n\nHdd in this Computer : %d\n", nDrv);
    17.     if(nDrv < 1) return -1;
    18.    
    19.     for(long i = 0; i < nDrv; i++){
    20.         printf("SerialHdd \"%s\"\n", GetSerialNumber(i));
    21.         printf("ModelNumber %s\n", GetModelNumber(i));
    22.         printf("RevisionNumber %s\n", GetRevisionNumber(i));
    23.         printf("BufferSize %d\n", GetBufferSize(i));
    24.        
    25.         unsigned __int64 dSiz= GetDiskSize(i);
    26.         printf("Disk size = %I64d (Bytes), %I64d (Kb), %I64d (Mb), %I64d (Gb)\n",
    27.             dSiz, dSiz / (1024),
    28.             dSiz / (1024 * 1024), dSiz / (1024 * 1024 * 1024));
    29.     }
    30.     return 0;
    31. }

    http://diendan.congdongcviet.com/threads/t400125::run-as-admin-on-os-uac.cpp

    Xem thêm:

  4. #4
    Ngày gia nhập
    11 2017
    Bài viết
    3

    Giải thích cho mình mấy cái code trong hàm với

    extern "C"{
    __declspec(dllimport) bool GetDiskInfo();
    __declspec(dllimport) char* GetSerialNumber(int i);
    __declspec(dllimport) char* GetModelNumber(int i);
    __declspec(dllimport) char* GetRevisionNumber(int i);

    __declspec(dllimport) UINT GetBufferSize(int i); //@ UINT in windows.h
    __declspec(dllimport) unsigned __int64 GetDiskSize(int i);
    }
    sao build ra được vậy, cần add thư viện gì nữa k

  5. #5
    Ngày gia nhập
    08 2017
    Bài viết
    348

    Xem link này:
    dllexport, dllimport

    Hình như nó là keyword, tôi chỉ làm theo thói quen, theo các template có trước, có sẵn thôi.
    Tất nhiên cần thư viện - các hàm đó chứa ở đâu chứ, hơn nữa cách liên kết cho TBD (abc.lib)

    Build thì hỏi mấy thầy đang dạy c/c++; tôi không nhớ đã làm như thế nào, tìm lại mất nhiều thời gian.

    Ở hình chụp có link - đường dẫn tới devlib mà.

Tags của đề tài này

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn