• Как создать и заполнить массив автоматически и добавить его в json?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Вы можете создать класс, в ктором будет свойство:

    Public Property Words as List(Of String)

    После создания экземпляра класса и заполнения Words, можно будет произвести сериализацию класса в Json. Для этого можно использовать JavaScriptSerializer или newtonsoft.json
    На выходе будет json
    Ответ написан
    Комментировать
  • VPN через сервер в облаке?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    1. Настраиваете VPN сервер на удаленном хостинге. Инструкций в сети много, например так.
    2. Генерируете и экспортируете ключи на свои устройства, ставите на устройства VPN клиенты.
    3. Пользуетесь полностью закрытым каналом.

    Есть возможность поднимать VPN клиента сразу на домашнем роутере. В этом случае не нужно каждый раз запускать программу на устройстве.
    Ответ написан
    Комментировать
  • Как подать жалобу на действия РКН?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Есть общественное объединение Роскомсвобода. Обратитесь к ним. Давно за ними наблюдаю, они делают правильное дело.
    Ответ написан
    Комментировать
  • Способ вывода 3D с тенями на примере?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Helix toolkit.
    Там можно все что Вы описали и намного больше.
    Ответ написан
  • Как отобразить линию в Winforms C#?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Зачем такие сложности? Берёте Panel, выставляете видимый Border и делаете ей минимальную высоту.
    Ответ написан
    Комментировать
  • Ошибка 404 при выводе странички хотя запрос запрос прописал правильно?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    404 означает, что не найдена страница. Возможные причины:
    - нет контроллера с таким именем;
    - неверно настроены псевдонимы для областей.
    Ответ написан
  • Как оформлямть небольшие работы?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Можно заключить еще один общий договор с автопролонгацией на оказание работ на почасовой основе. В конце месяца вбивание выполненные работы в акт работ и отправляете на оплату.
    Ответ написан
    4 комментария
  • Можно ли развить IT стартап без знания кодирования и как?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Стартап, как и любой бизнес должны начинаться с бизнес-плана.
    В плане должны быть отражены:
    - все затраты, включая зарплатные;
    - доходы.
    Главным из бизнес плана является точка безубыточности - дата, когда стартап начнёт приностиь прибыль. Она может наступить через год, три, да когда угодно. Может и не наступить. Тогда это плохая идея для стартапа.
    Резюме:
    1. План.
    2. Соблюдение плана.
    3. Успех.
    Ответ написан
    Комментировать
  • Куда пропадают формулы?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Вариантов два:
    - макрос, который меняет формулу на значение;
    - пользователь, освоивший Копировать - Специальная вставка - Вставить как значение
    Ответ написан
    Комментировать
  • Программа которая находит последний товар на сайте с помощью C#?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Эта программа называется парсер. Он может проверять содержимое сайта через определенный интервал времени.
    Поскольку тема довольно обширная и содержит множество "подводных камней", то для Вас два варианта:
    - погружаться в тему и задавать здесь более конкретные вопросы;
    - поручить выполнение задачи квалифицированному специалисту.
    Ответ написан
  • Почему я не могу редактировать MenuStrip в C# Windows Form Apps?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Судя по скриншоту, Вы создали NET 5 проект.
    По сравнению с NET Framework, для добавления/редактирования элементов, здесь нужно менять свойство Items у контрола. Вместо кнопок можно использовать ToolStripMenuItem.
    Также при редактировании убедитесь, что проект не запущен.
    Ответ написан
  • Обновление функционала работающей базы данных Access. Возможно ли?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Для начала - нужно разделить данные и код на два файла.
    Второе - предусмотрите автоотключение пользователей от БД, например в полночь.
    Для апдейта, нужно будет только заменить файл с кодом. Если этот файл пользователи "растаскивают" на свои ПК, сделайте проверку версии (отдельное поле в БД). Если версия не подходит - программа должна выдать окно с информацией - где взять новую версию.
    Ответ написан
    1 комментарий
  • Как построить график по формуле?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Есть контрол Chart. Его использование очень сходе с использованием одноименного объекта в Excel.
    Определяете диапазон значений t, вычисляете x и y. Полученные данные записываете в массив, массив скармливаете Chart. Все, график построен
    Ответ написан
    Комментировать
  • Как правильно открыть главную форму в событии closing C#?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    if (result != DialogResult.Yes)
    {
    f.Show();
    e.Cancel = true;
    }

    Это в дочерней форме - лишнее.
    Обрабатывайте DialogResult в основной форме, после вызова
    Form2 .ShowDialog();
    Там же извлекайте введённые значения.
    Ответ написан
    Комментировать
  • Как програмно нажать на клавишу?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Вы можете использовать вызов через WinAPI keybd_event

    Ниже - часть моего VB.NET проекта, на C# я думаю сами переделаете.

    Module mdlKbrdEmulate
        ' Эмуляция нажатий клавиш клавиатуры
    
        ' Коды клавиш для эмуляции нажатий
        Public Const VK_LBUTTON = &H1       ' Левая кнопка мыши
        Public Const VK_RBUTTON = &H2       ' Правая кнопка мыши
        Public Const VK_CANCEL = &H3        ' Виртуальная клавиша Отмены, используемая для обработки комбинации клавиш Control-Break
        Public Const VK_MBUTTON = &H4       ' Средняя кнопка мыши
        Public Const VK_BACK = &H8          ' Backspace
        Public Const VK_TAB = &H9           ' Tab
        Public Const VK_CLEAR = &HC         ' 5 (на цифровой клавиатуре без Num Lock)
        Public Const VK_RETURN = &HD        ' Enter
        Public Const VK_SHIFT = &H10        ' Shift (любая)
        Public Const VK_CONTROL = &H11      ' Ctrl (любая)
        Public Const VK_MENU = &H12         ' Alt (любая)
        Public Const VK_PAUSE = &H13        ' Pause
        Public Const VK_CAPITAL = &H14      ' Caps Lock
        Public Const VK_ESCAPE = &H1B       ' Esc
        Public Const VK_SPACE = &H20        ' Spacebar
        Public Const VK_PRIOR = &H21        ' Page Up
        Public Const VK_NEXT = &H22         ' Page Down
        Public Const VK_END = &H23          ' End
        Public Const VK_HOME = &H24         ' Home
        Public Const VK_LEFT = &H25         ' Стрелка влево
        Public Const VK_UP = &H26           ' Стрелка вверх
        Public Const VK_RIGHT = &H27        ' Стрелка вправо
        Public Const VK_DOWN = &H28         ' Стрелка вниз
       '  Удалил остальные, т.к. мой ответ становится слишком большим.
    
        Public Const KEYEVENTF_KEYUP = &H2  ' Событие отпускания клавиши
        Public Const VK_LSHIFT = &HA0
    
        <DllImport("user32.dll")>
        Public Function GetKeyboardLayout(idThread As UInteger) As IntPtr
        End Function
    
        <DllImport("user32.dll")>
        Public Function VkKeyScanEx(ch As Char, dwhkl As IntPtr) As Short
        End Function
    
        <DllImport("user32.dll", CharSet:=CharSet.Auto)>
        Public Function MapVirtualKey(uCode As Integer, uMapType As Integer) As Integer
        End Function
    
        <DllImport("user32.dll", EntryPoint:="keybd_event", CharSet:=CharSet.Auto, ExactSpelling:=True)>
        Public Sub keybd_event(bVk As Keys, bScan As Byte, dwFlags As UInt32, dwExtraInfo As IntPtr)
        End Sub
    
        ' Эмуляция нажатия клавиши или набор текста
        Public Sub SetLetter(sLett As String, fCtrl As Boolean, fShift As Boolean, Optional iInt As Long = 0)
            Dim sScan1 As Byte, sScan2 As Byte, i As Integer, keyboardLayout As IntPtr = GetKeyboardLayout(0)
            Dim vKey As Short, m_LOWBYTE As Byte, sScan As Byte
    
            If fCtrl Then ' Нажатие Ctrl
                sScan1 = CByte(MapVirtualKey(VK_CONTROL, 0))
                keybd_event(&H11, sScan1, 0, 0)
                Call SleepMe(iInt) ' Заморозка выполнения программы
            End If
    
            If fShift Then ' Нажатие Shift
                sScan2 = CByte(MapVirtualKey(VK_LSHIFT, 0))
                keybd_event(&HA1, sScan2, 0, 0)
                Call SleepMe(iInt) ' Заморозка выполнения программы
            End If
    
            For i = 1 To Len(sLett) ' Перебираем все символы строки
                Application.DoEvents()
                If bStop Then GoTo lblEnd      ' Прерывание выполнения
    
                vKey = VkKeyScanEx(Mid(sLett, i, 1), keyboardLayout)
                m_LOWBYTE = vKey And &HFF               ' Get the low byte from the virtual key
                sScan = CByte(MapVirtualKey(vKey, 0))   ' Get the scan code of the key.
    
                keybd_event(m_LOWBYTE, sScan, 0, 0)     ' Нажатие нужной клавиши
                Call SleepMe(iInt) ' Заморозка выполнения программы
                keybd_event(m_LOWBYTE, sScan, KEYEVENTF_KEYUP, 0)
                Call SleepMe(iInt) ' Заморозка выполнения программы
            Next
    
    lblEnd:
            If fShift Then keybd_event(&HA1, sScan2, KEYEVENTF_KEYUP, 0) ' Отжатие Shift
            If fCtrl Then keybd_event(&H11, sScan1, KEYEVENTF_KEYUP, 0) ' Отжатие Ctrl
            Call SleepMe(iInt) ' Заморозка выполнения программы
        End Sub
        ' Эмуляция нажатия спецклавиш
        Public Sub SetLetterEx(vKey As Short, fCtrl As Boolean, fShift As Boolean, Optional iInt As Long = 0)
            Dim sScan1 As Byte, sScan2 As Byte
            Dim keyboardLayout As IntPtr = GetKeyboardLayout(0)
            Dim m_LOWBYTE As Byte = vKey And &HFF               ' Get the low byte from the virtual key
            Dim sScan As Byte = CByte(MapVirtualKey(vKey, 0))   ' Get the scan code of the key.
    
            If fCtrl Then ' Нажатие Ctrl
                sScan1 = CByte(MapVirtualKey(VK_CONTROL, 0))
                keybd_event(&H11, sScan1, 0, 0)
                Call SleepMe(iInt) ' Заморозка выполнения программы
            End If
    
            If fShift Then ' Нажатие Shift
                sScan2 = CByte(MapVirtualKey(VK_LSHIFT, 0))
                keybd_event(&HA1, sScan2, 0, 0)
                Call SleepMe(iInt) ' Заморозка выполнения программы
            End If
    
            keybd_event(m_LOWBYTE, sScan, 0, 0) ' Нажатие нужной клавиши
            Call SleepMe(iInt) ' Заморозка выполнения программы
            keybd_event(m_LOWBYTE, sScan, KEYEVENTF_KEYUP, 0)
            Call SleepMe(iInt) ' Заморозка выполнения программы
    
            If fShift Then keybd_event(&HA1, sScan2, KEYEVENTF_KEYUP, 0) ' Отжатие Shift
            If fCtrl Then keybd_event(&H11, sScan1, KEYEVENTF_KEYUP, 0) ' Отжатие Ctrl
        End Sub
    
    End Module
    Ответ написан
    Комментировать
  • Как устроено обновление приложений?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Приложение может быть разбито на несколько dll Одна часть (например) - отвечает за интерфейс, другая - за работу с файловой системой и т.д.
    На С# я пользуюсь ClickOnce - им производится обновление только изменённых частей проекта.
    Ответ написан
    Комментировать
  • Как пробросить порт из встроенной в Windows 10 Ubuntu в саму Windows?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Как обычно я поступаю в таких случаях:
    - Разворачиваю дистрибутив (например Ubuntu) в виртуальной машине. Например - в VMWare;
    - Настраиваю всё что необходимо в виртуалке, в настройках VMWare устанавливаю сетевое соединение "мост". В этом режиме домашний роутер будет видеть Ubuntu как ещё одну физическую машину. Следовательно Ubuntu получит свой IP адрес в домашней сети. Вот по этому адресу и можно обращаться к этой виртуальной машине.
    Ответ написан
    Комментировать
  • Как сохранять состояние приложения?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Классы можно сериализовать в бинарный поток и записать как файл.
    При необходимости - извлечь и десериализовать.
    Если данных много - лучше хранить их в базе данных.
    Ответ написан
    Комментировать
  • Как переделать конструкцию на цикл While?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Судя по коду и вопросу, Вы просто не хотите учиться. Может найти другой ВУЗ?
    Ответ написан
    Комментировать
  • К чему привязать ProgressBar c#?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Как вариант - создать в классе событие, которое будет возникать при достижении целого числа процентов работы (1, 2, 3 и т.д.). А в форме подписаться на это событие и отображать достигнутое значение в прогрессбаре.
    Ответ написан
    2 комментария