Skip to content

Instantly share code, notes, and snippets.

View Infarh's full-sized avatar

Pavel Infarh

  • Moscow
  • 08:30 (UTC +03:00)
View GitHub Profile
@Infarh
Infarh / kms
Created July 10, 2024 16:53 — forked from vikassaini01/kms
KMS server Windows
Online kms host address:
--------
kms.digiboy.ir
54.223.212.31
kms.cnlic.com
kms.chinancce.com
kms.ddns.net
franklv.ddns.net
k.zpale.com
m.zpale.com
@Infarh
Infarh / pull-request.md
Created July 5, 2024 08:24
Переключение git на ветвь pull request'а

Переключениен на ветку запроса на вытягивание

Что бы переключиться на ветку нужного пулл-реквеста (пусть его номер будет 123) надо

git fetch origin pull/123/head:pull-request/rp-123
git checkout pull-request/rp-123
# ...
git branch -D pull-request/rp-123
@Infarh
Infarh / ZipOutput.csproj
Created April 14, 2024 21:01
ProjectHack
<Project Sdk="Microsoft.NET.Sdk">
<UsingTask TaskName="ZipDir" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v12.0.dll">
<ParameterGroup>
<ZipFileName ParameterType="System.String" Required="true" />
<DirectoryName ParameterType="System.String" Required="true" />
</ParameterGroup>
<Task>
<Reference Include="System.IO.Compression.FileSystem" />
<Using Namespace="System.IO.Compression" />
@Infarh
Infarh / Algorightm.Math.cs
Last active April 7, 2024 09:13
Algorithms
[StructLayout(LayoutKind.Explicit)]
readonly ref struct FloatToIntBytesConverter
{
[FieldOffset(0)]
public readonly float Float;
[FieldOffset(0)]
public readonly int Int;
public FloatToIntBytesConverter(float x) => Float = x;
@Infarh
Infarh / RSA.cs
Created March 11, 2024 21:35
RSA encryption
using System.Security.Cryptography;
using System.Text;
using System.Text.Json;
using System.Text.Json.Serialization;
using RSACryptoServiceProvider rsa = new();
rsa.KeySize = 2048;
var xml_private_str = rsa.ToXmlString(true);
@Infarh
Infarh / SQL.md
Last active December 16, 2023 06:12
Вопросы по БД
  1. Что такое БД и банки данных? Зачем нужны? Какие виды СУБД активно используются сегодня? Задача: создание БД и таблиц. Простейший запрос SELECT.
  2. Проектирование БД. Этапы. Модель данных. Задача: создание БД и таблиц. Простейший запрос SELECT.
  3. Язык SQL. Синтаксис. DDL, DML, DCL. Основные операторы. Пример.
  4. Таблица SQL БД, строка, колонка, атриут, поле. Пример. Создание, редактирование, удаление таблиц. Временные таблицы.
  5. Целостность данный в БД. Ограничения.
  6. Типы данных в SQL. Особенности.
  7. Запрос SELECT. Варианты использвоания.
  8. Запросы INSERT UPDATE.
  9. Запрос DELETE. Выполнение удаления дынных без удаления строк таблицы. Очистка таблицы.
  10. Функции AVG, SUM, COUNT, MIN, MAX в запросах.
@Infarh
Infarh / Fast.cs
Created April 28, 2023 08:17
Получение значения отрицательного числа в дополнительном коде для указанного количества знаковых разрядов
/// <summary>Преобразование отрицательного числа</summary>
/// <param name="x">Целое число с битам данных</param>
/// <param name="n">Число бит без учёта знакового бита</param>
static int GetSignedValueFast(int x, int n) => x < 1 << n ? x : x - (1 << n + 1);
static int GetSignedValueFastExplain(int x, int n)
{
// Если число бит n = 4.
// то значение не может превышать 2^n - т.е. 16.
if (x < 1 << n) // Если значение меньше 16
@Infarh
Infarh / Program.cs
Created March 13, 2023 15:17
Задание имени ресурсу в .csproj
var assembly = typeof(ProgramNamespace.Program).GetTypeInfo().Assembly;
using var resource = assembly.GetManifestResourceStream("Information.Data.xml");
@Infarh
Infarh / MD5.cs
Created December 13, 2022 08:19
Hash
public class MD5
{
private MD5() { }
public static byte[] Compute(string str, Encoding? encoding = null) => Compute((encoding ?? Encoding.UTF8).GetBytes(str));
private static void SetLength(byte[] buffer64, ulong length)
{
buffer64[^8] = (byte)(length << 3);
buffer64[^7] = (byte)(length >> 5);
@Infarh
Infarh / EFTest.csproj
Last active October 13, 2022 11:00
Пример EFCore Sqlite
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>