Chris.Crooks7 Ответов: 2

Как добавить код для поиска серийного номера USB-накопителя, с которого работает мое приложение?


Я пытаюсь добавить уровень защиты к своему программному обеспечению, где я могу "жестко закодировать" каждую проданную программу с серийным номером или свободным пространством в байтах, доступным на флэш-накопителе, на котором я ее продаю.

Будучи просто программистом кружки, использующим Visual Basic 2010 Express, но знающим инженером, я продаю учебники с использованием приложений "MS Forms" студентам. Моя проблема заключается в том, что студенты делятся моими приложениями (копируют мои программы) со всем классом и снижают мои продажи.

Мне нужна помощь, чтобы написать полный проект, чтобы получить эту информацию.

Благодарю вас всех в предвкушении. :-)

Что я уже пробовал:

Public Class Form1

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        


    Public Function GetDriveSerialNumber() As String
        Dim DriveSerial As Integer
        'Create a FileSystemObject object
        Dim fso As Object = CreateObject("Scripting.FileSystemObject")
        Dim Drv As Object = fso.GetDrive(fso.GetDriveName(Application.StartupPath))
        With Drv
            If .IsReady Then
                DriveSerial = .SerialNumber
            Else    '"Drive Not Ready!"
                DriveSerial = -1
            End If
        End With
        Return DriveSerial.ToString("X2")
    End Function

End Class

Dave Kreskowiak

Что заставляет вас думать, что каждый USB-накопитель даже имеет серийный номер?

Chris.Crooks7

Я просто подумал, что у них у всех должен быть серийный номер. Если нет, то не могли бы вы рассказать мне, как, возможно, просто получить доступное место на USB - накопителе в качестве "длинного". То, что я ищу, - это приложение с одной формой, которое возвращает целочисленное значение доступного пространства в текстовое поле.
Спасибо за ваш комментарий :-)

Dave Kreskowiak

Зависит от привода. Дешевые диски обычно не имеют серийного номера. Самый дорогой из них, например, большой емкости, шифрующие диски, делают.

Что касается дискового пространства, то это просто ... > DriveInfo.Свойство TotalFreeSpace (System.IO)[^]

2 Ответов

Рейтинг:
1

Gerry Schmitz

Вы говорите, что вы "жестко кодируете" каждую "проданную программу".

Затем просто введите имя "покупателя" и / или адрес электронной почты в вашем приложении, а также "водяную метку" со всей информацией о пользователе.

Safari books сделал / делает что-то подобное.

Вероятно, вы можете автоматизировать этот процесс, имея в виду "контрольные суммы", если планируете "залатать" свои "идентификационные чипы".


Рейтинг:
0

Maciej Los

Проверьте мои прошлые ответы:
Разрешите форме открываться только внутри драйвера пера[^]
Как получить серийный номер usb C# в XP[^]

Для получения более подробной информации, пожалуйста, смотрите:
USB в двух словах - Глава 5 - дескрипторы USB[^]