Форум программистов, компьютерный форум, киберфорум
Наши страницы
Комментарии
Войти
Регистрация
Восстановить пароль
  1. Старый комментарий
    Аватар для Rius
    Самый простой способ нумерации версии программы
    Цитата:
    Странно что в VS это не автоматизировано.
    Автоматизировано:
    В составе проекта есть файл AssemblyInfo.*, с атрибутами сборки AssemblyVersion и AssemblyFileVersion.
    По умолчанию там стоит строка "1.0.0.0", которую ТС с невероятным упорством меняет каждый раз вручную.
    Если же удалить атрибут AssemblyFileVersion, а в AssemblyVersion прописать * вместо числа, то будет подставляться такое "загадочное" значение из VS, как дата/время сборки:
    • 1.0.* =>1.0.A.B:
    • 1.0.0.* => 1.0.0.B
    Где A - число целых дней, прошедших с начала 2000 года, а B - число секунд / 2, прошедших с начала текущих суток. Пруф в исходниках компилятора.

    Чтобы не ругалось при сборке, в свойствах проекта должна быть отключена опция Deterministic, т.к. она с автоинкрементом не совместима.

    P.S.
    Почему число секунд делится на 2?
    Потому что ни одна часть версии файла не может превышать 65535, т.к. она представлена 16-битным беззнаковым числом:
    • FILEVERSION version.
      Binary version number for the file. The version consists of two 32-bit integers, defined by four 16-bit integers. For example, "FILEVERSION 3,10,0,61" is translated into two doublewords: 0x0003000a and 0x0000003d, in that order. Therefore, if version is defined by the DWORD values dw1 and dw2, they need to appear in the FILEVERSION statement as follows: HIWORD(dw1), LOWORD(dw1), HIWORD(dw2), LOWORD(dw2).
    • PRODUCTVERSION version.
      Binary version number for the product with which the file is distributed. The version parameter is two 32-bit integers, defined by four 16-bit integers. For more information about version, see the FILEVERSION description.
    На этом фоне странно смотрятся такие значения:
    Цитата:
    Сообщение от Etyuhibosecyu Посмотреть сообщение
    у хорошо, по запросу "Алгоритм 2.5.6.65536 описание и скриншоты" что-нибудь найдете?
    Явно написано от балды.
    Запись от Rius размещена 19.11.2018 в 15:55 Rius вне форума
    Обновил(-а) Rius 21.11.2018 в 14:12
  2. Старый комментарий
    Самый простой способ нумерации версии программы
    Странно что в VS это не автоматизировано.
    В IDE малоизвестного бейсика есть функция автоподсчета числа компиляций и релизов с возможностью записи этих данных в ресурс "Version" исполняемого файла и к коде информация доступна в виде константы.
    Кликните здесь для просмотра всего текста
    Запись от locm размещена 19.11.2018 в 13:44 locm вне форума
  3. Старый комментарий
    Самый простой способ нумерации версии программы
    Не надо так делать. Не зря же люди придумывали мажорные минорные версии и их правила совместимости между собой. А тут бардак получится полнейший.
    Запись от krolligator размещена 19.11.2018 в 01:19 krolligator вне форума
  4. Старый комментарий
    Аватар для Usaga
    Самый простой способ нумерации версии программы
    Цитата:
    количество проектов, созданных в рамках данного приложения (например, 2).
    Офигенно) А если какой-то функционал перестанет быть нужным или просто состав решения пересмотрится, то номер версии уменьшится?))
    Запись от Usaga размещена 18.11.2018 в 07:40 Usaga вне форума
  5. Старый комментарий
    Аватар для Rius
    Самый простой способ нумерации версии программы
    Фи!
    "Простой" не значит простой
    Вам каждый раз приходится заходить в свойства проекта и что-то там менять. И надо это не забыть делать каждый раз. От того простой становится сложным и обременительным.
    А можно было настроить скрипт, выполняемый при сборке, который бы автоматически подставлял и дату, и ревизию из VCS, и номер версии (если он не на дате основан) автоизменяемый.
    Запись от Rius размещена 17.11.2018 в 17:40 Rius вне форума
  6. Старый комментарий
    Аватар для Rius
    Запрет ввода новой строки (нажатия Enter) в Текстбоксе
    Копируем перевод строки в буфер обмена и спокойно вставляем в текст бокс, обходя эту крутую защиту.
    Запись от Rius размещена 28.10.2018 в 15:21 Rius вне форума
  7. Старый комментарий
    Аватар для mozgotron
    Набросок к новому десятичному хеш-алгоритму
    Avazart, знаете почему я пощу новые версии кода, оставляя старые. Чтобы эта страница в моём блоге наглядно показывала, что именно я являюсь разработчиком этого кода. То есть, чтобы в случае чего не было проблем с доказыванием моих авторских прав на этот алгоритм.
    Запись от mozgotron размещена 22.05.2018 в 23:29 mozgotron вне форума
  8. Старый комментарий
    Аватар для mozgotron
    Набросок к новому десятичному хеш-алгоритму
    Orlangur1991, исправил
    Dim B() As Char = strT.

    Avazart, учту на следующий раз.
    Запись от mozgotron размещена 22.05.2018 в 23:25 mozgotron вне форума
  9. Старый комментарий
    Аватар для Orlangur1991
    Набросок к новому десятичному хеш-алгоритму
    Разве не должен массив строится из передаваемой строки?
    vb.net
    1
    
    Dim B() As Char = strT
    И можно сократить вызов функции
    vb.net
    1
    
    TextBox1.Text &= hashgen(RichTextBox1.Text) & NewLine
    Запись от Orlangur1991 размещена 22.05.2018 в 13:30 Orlangur1991 вне форума
    Обновил(-а) Orlangur1991 22.05.2018 в 18:53
  10. Старый комментарий
    Аватар для Avazart
    Набросок к новому десятичному хеш-алгоритму
    Почему сразу не редактировать запись блога? Зачем постить в комменты?
    Запись от Avazart размещена 22.05.2018 в 11:54 Avazart вне форума
  11. Старый комментарий
    Аватар для mozgotron
    Набросок к новому десятичному хеш-алгоритму
    Новая версия функции десятичного хеширования (CODES10-hash)

    vb.net
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    
    Imports System.Text.Encoding
    Imports System.Text.StringBuilder
    Imports System.Environment
     
    Public Class Form1
        Dim c As Long
        Dim i As Long
        Dim s As String
        Dim t As String
     
        Private Sub RichTextBox1_TextChanged1(ByVal sender As Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged
            t = RichTextBox1.Text
            hashgen(t)
            TextBox1.AppendText(s & NewLine)
        End Sub
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            t = RichTextBox1.Text
            hashgen(t)
            TextBox1.AppendText(s & NewLine)
        End Sub
     
        Function hashgen(ByVal t As String) As String
           i = 1
            c = 123456789
            Dim B() As Char = t
            For Each bs As Char In B
                c = (c * AscW(bs) + i) Mod 10000000000
                i += 1
            Next
            s = Strings.Right(c.ToString.PadLeft(10, "0"c), 10)
            Return s
        End Function
     
    End Class
    Запись от mozgotron размещена 22.05.2018 в 11:39 mozgotron вне форума
  12. Старый комментарий
    Аватар для mozgotron
    Набросок к новому десятичному хеш-алгоритму

    Исправленная функция десятичного хеширования

    vb.net
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    
    Imports System.Text.Encoding
    Imports System.Text.StringBuilder
    Imports System.Environment
     
    Public Class Form1
        Dim codes As UInt64
        Dim index1 As UInt64
        Dim index2 As UInt64
        Dim strind As String
        Dim strT As String
     
        Private Sub RichTextBox1_TextChanged1(ByVal sender As Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged
            strT = RichTextBox1.Text
            hashgen(strT)
            TextBox2.AppendText(strind & NewLine)
        End Sub
     
        Function hashgen(ByVal strT As String) As String
            codes = 0
            index1 = 0
            index2 = 1234567899876543210
            Dim B() As Char = strT
            For Each bs As Char In B
                index1 = AscW(bs) * 1000000000000000 + index2 \ 10
                index2 = index2 Xor index1
            Next
            codes = ((index2 \ 10000000000) + 10000000000) - (index2 Mod 10000000000)
            strind = Strings.Right(codes.ToString.PadLeft(10, "0"c), 10)
            Return strind
        End Function
     
    End Class
    Запись от mozgotron размещена 09.04.2018 в 11:31 mozgotron вне форума
  13. Старый комментарий
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Написал такую прогу на c++(консольное приложение).
    Да, нету красивого интерфейса, зато спокойно сплю по ночам.
    Запись от Levon1999 размещена 24.01.2018 в 20:43 Levon1999 вне форума
  14. Старый комментарий
    Аватар для bedvit
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Цитата:
    Сообщение от Rius Просмотреть комментарий
    почитал... Сложилось впечатление, что цель некоторых тем - просто собрать положительные отзывы о выкладываемом продукте, без дальнейшего его "допиливания", по причине "мне и так нравится". С указанием сколько времени, сил, валерьянки потрачено. Хотите - доделывайте сами, мне уже надоело пилить этот проект, по причине...(здесь следует важная причина). Ради объективности скажу, что иногда действительно бывают такие причины (но это видно в процессе переписки, чел.готов доработать... в некоторой видно... не готов )
    Запись от bedvit размещена 24.01.2018 в 10:06 bedvit вне форума
  15. Старый комментарий
    Аватар для Rius
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Главное не уподобляться ToDo для разработчика ~ "сделал как умею (как получилось), и исправлять ничего не хочу - жрите так".
    Запись от Rius размещена 23.01.2018 в 21:22 Rius вне форума
  16. Старый комментарий
    Аватар для bedvit
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Цитата:
    Сообщение от mozgotron Просмотреть комментарий
    Rius, в общем я понял: никому моя программа не нужна. Тогда я её нигде больше рекламировать не буду, ни в Гугл+, ни на Ютубе. Сам один буду юзать.
    быстро вы сдались выложите в тестирование, возможно родится хороший продукт.
    Запись от bedvit размещена 23.01.2018 в 21:19 bedvit вне форума
  17. Старый комментарий
    Аватар для bedvit
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Цитата:
    Сообщение от Rius Просмотреть комментарий
    Security through obscurity.
    - интересная статья.
    Запись от bedvit размещена 23.01.2018 в 21:11 bedvit вне форума
  18. Старый комментарий
    Аватар для bedvit
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Зачем её декоммпилировать, должен быть где-то код. Это же опен) а про алгоритмы шифрования нужно немного почитать, и поймете.
    Запись от bedvit размещена 23.01.2018 в 21:00 bedvit вне форума
  19. Старый комментарий
    Аватар для Rius
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Цитата:
    Одно не пойму, как автор мог выложить алгоритм шифрования своей проги на всеобщее обозрение?
    Давно уже общеизвестно, что закрытие алгоритма шифрования является его не защитой, а уязвимостью. Почитайте про Security through obscurity.
    Запись от Rius размещена 23.01.2018 в 20:59 Rius вне форума
  20. Старый комментарий
    Аватар для mozgotron
    Представляю свою компьютерную программу Код доступа (для самых смелых))
    Avazart, а можно декомпилировать программу KeePass 2 и узнать её алгоритм шифрования? Теоретически имею в виду. Или её автор как-то защитил от декомпиляции?
    Хотя какой смысл, если KeePass 2 - open source. Одно не пойму, как автор мог выложить алгоритм шифрования своей проги на всеобщее обозрение?
    Запись от mozgotron размещена 23.01.2018 в 20:51 mozgotron вне форума
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru