1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

Hỏi đáp Cho mình hỏi cách quản lý người dùng app, license, trial...

Thảo luận trong 'Thảo luận chung - Hỏi đáp' bắt đầu bởi hoangvq, 13/7/18.

  1. hoangvq

    hoangvq Thành viên
    • 8/11

    Tham gia ngày:
    12/7/18
    Bài viết:
    29
    Đã được thích:
    7
    Chào pro, em muốn hỏi về cách quản lý người dùng app autoIT ạ. Em muốn là khi tải app về thì được dùng miễn phí 3 ngày (cái này cũng tiện cho việc gửi demo trước cho khách hàng) và sau đó active bằng Lisence.
    Em không muốn dùng hệ thống account vì không có server, hơn nữa nó cũng không phù hợp lắm với app nhỏ và cảm giác nó không được ổn định lắm. Việc thanh toán qua thẻ cào cũng bị trừ phí quá nhiều nên em định là sẽ thanh toán qua chuyển khoản và gửi lisence trực tiếp.
    Vậy việc xác định thời gian 3 ngày như thế nào, và tạo Lisence dùng vĩnh viễn như thế nào.
    Bác nào có giải pháp share giúp em với.
    Cảm ơn!
     
  2. minhvnnhut

    minhvnnhut Thành viên mới
    • 3/6

    Tham gia ngày:
    28/10/16
    Bài viết:
    25
    Đã được thích:
    5
    Mình có ý như này chắc có thể sẽ hiệu quả đối với bạn, ta sẽ tạo 1 đoạn mã nhỏ gồm ngày tháng hết hạn sử dụng và dùng một số thuật toán riêng để mã hóa nó, và app của bạn khi nhận dc đoạn mã lisence từ người dùng nó sẽ đọc và phân tích ngày hết hạn (dùng giờ mạng). Vd khi khách muốn mua bản quyền 1 năm thì bạn chỉ việc mã hóa đoạn mã [13-7-2019] rồi đưa cho khách, app sẽ đọc và xác định ngày hết lisence
     
  3. hoangvq

    hoangvq Thành viên
    • 8/11

    Tham gia ngày:
    12/7/18
    Bài viết:
    29
    Đã được thích:
    7
    Theo cách như vậy thì có một số vấn đề này xử lý như thế nào:
    1. Lấy thời gian thực tế để so sánh như thế nào, thời gian trên máy sẽ không chính xác vì khi hết hạn thì việc đầu tiên người dùng muốn thử là sửa lại thời gian trên máy.
    2. Lưu thông tin Lisence đó ở đâu, nếu là trên Regetry thì khi họ cài lại win (tình cờ chẳng hạn) là bị reset lại thời gian, còn lưu ở file cùng thư mục thì khi họ copy chuyển cho người dùng khác là vẫn dùng được bình thường chẳng cần mua. Lưu file ở AppData có ổn không, hoặc lưu file ở thư mục System32 có được không nếu máy không chạy ở chế độ Admin?

    Nó dẫn về 2 vấn đề chính là lấy thông tin thời gian thực như thế nào và lấy thông tin serial của phần cứng nào để định danh máy tính.
     
  4. Ta Minh Tam

    Ta Minh Tam Thành viên mới
    • 1/6

    Tham gia ngày:
    14/7/18
    Bài viết:
    4
    Đã được thích:
    0
    mình cùng đang mong có giải pháp trong trường hợp này, theo các bác mình có cần lock thêm theo địa chỉ Mac, để user đó không chuyển sang máy tính khác dùng. Thêm nữa là muốn so sánh thời gian thực chứ không dựa vào thời gian của hệ thống.

    các bạn cho thêm hướng xử lý, thanks
     
  5. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    177
    Đã được thích:
    92
    Thời gian thực thì check thời gianonline nhé.
     
    Ta Minh Tam thích bài này.
  6. Ta Minh Tam

    Ta Minh Tam Thành viên mới
    • 1/6

    Tham gia ngày:
    14/7/18
    Bài viết:
    4
    Đã được thích:
    0
    Cho mình xin sample code với bạn, thanks
     
  7. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    177
    Đã được thích:
    92
    Tạm thời mình không có online lap, nhưng bạn có thể sử dụng INetGet để get source 1 trang thời gian nào đó có giờ VN, rồi dùng stringregexp hay bất cứ thứ gì đó tách cái ngày tháng ra rồi xét thôi.
     
    Ta Minh Tam thích bài này.
  8. Ta Minh Tam

    Ta Minh Tam Thành viên mới
    • 1/6

    Tham gia ngày:
    14/7/18
    Bài viết:
    4
    Đã được thích:
    0
    Cám ơn gợi ý của bạn

    mình làm code đây rồi:
    Mã (AutoIt):
    #include <MsgBoxConstants.au3>
    #include <StringConstants.au3>
    $txt = BinaryToString(InetRead("https://www.timeanddate.com/worldclock/uk/london", 1))

    Local $aArray = StringRegExp($txt, '(?i)<span id=ctdat>(.*?)</span>', $STR_REGEXPARRAYGLOBALMATCH)
    For $i = 0 To UBound($aArray) - 1
        MsgBox($MB_SYSTEMMODAL, "Tìm được ngày hiện tại: " & $i, $aArray[$i])
    Next
    1 vấn đề, nó hiển thị ngày tiếng việt và không hiển thị được tiếng việt :)
     
    Chỉnh sửa cuối: 14/7/18
  9. hoangvq

    hoangvq Thành viên
    • 8/11

    Tham gia ngày:
    12/7/18
    Bài viết:
    29
    Đã được thích:
    7
    Trước mình có định danh theo địa chỉ MAC nhưng một số user dùng máy ảo nên MAC cũng fake luôn. Không biết ProcessID có bị sửa được ko, và có luôn get được không.
    Quyết định dùng server để quản ly user rồi, chỉ còn xem lấy ID nào để định danh thôi, ko dc thì phải tạo acc và pass vậy
     
    Ta Minh Tam thích bài này.
  10. Ta Minh Tam

    Ta Minh Tam Thành viên mới
    • 1/6

    Tham gia ngày:
    14/7/18
    Bài viết:
    4
    Đã được thích:
    0
    Không có cái nào hoàn hảo, nên đành đưa nhiều điều kiện để hạn chế cheat thôi bạn ạ :)
     

Chia sẻ trang này

Đang tải...