• Как включить бд в exe и как ей потом пользоватся?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    однако хоть какую то инфу по типу бд, с какими умеете работать?
    каков сценарий использования?
    если бд как ресурс, то по идее только для чтения?
    если c#, то есть много легвестных объектных бд, так же возможно вам подойдет хранение попросту словарей в json/bson?
    для предварительно заготовленных справочников, может быть на порядки экономичнее по объемам и быстродействию. да и по простоте использования.

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

    pps если вы освоили примеры с ms sql (ms sql exprees), вы все равно не можете включить ядро субд в экзешник. не тот случай. только sqlite или что еще более легкое
    Ответ написан
    Комментировать
  • Как Подключить к удалённом FTP/SFTP/FTPS на локальном ПК и получить к нему доступ на виртуальном ПК на том же ПК?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    Но прим этом чтобы подключение (логин/пароль) проводилось на хост машине.
    не возможно в принципе. логин/пароль вводятся в каждой системе (хост/виртуалки) самостоятельно. сохранять или ручками каждый раз - соль и перец по вкусу.

    ps был недавно вопрос
    SSH/Ftp как сетевой диск (с буквой) под Win11 как?
    но все равно сомнения:
    - на хосте скорее всего желательно сохранять логин/пароль
    - увидит ли виртуалка сетевой диск сомнительно. его нельзя объявить вторично шареным
    - если бы в фантастическом сне и увидела, то он должен быть подмонтированным до запуска виртуалки (но тогда снова см тезис о необходимости сохранять логин/пароль на хосте)

    pps если разрулите - отпишите рецепт своим ответом
    Ответ написан
    Комментировать
  • Во время обновления Windows на планшете сел аккумулятор. Как исправить?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    если не удаляли раздел восстановления, так же поищите в доках восстановление до фабричного состояния. начальный загрузчик винды явно живой.
    но учитывайте что такая процедура сотрет все программы и личные данные. если есть копии в облаках (и пароли к ним есть), то может это и не проблема
    Ответ написан
    Комментировать
  • Как работает код на C# в приведённом примере?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    а еще можно освоить пошаговую отладку, и посмотреть что прилетает в
    validNumber = int.TryParse(readResult, out numValue);
    после чего и думать ;)
    ну или так ))
    namespace ConsoleApp4
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                string? readResult;
                int numValue;
    
                Console.Write("Enter an integer value between 5 and 10: ");
    
                do
                {
                    readResult = Console.ReadLine();
                    bool validNumber = false;
                    validNumber = int.TryParse(readResult, out numValue);
    #if DEBUG
                    Console.WriteLine($"debug 'numValue='{numValue}");
                    Console.WriteLine($"debug 'validNumber='{validNumber}");
    #endif
                    if (validNumber == true)
                    {
                        if (numValue < 5 || numValue > 10)
                            Console.Write($"You entered {numValue}. Please enter a number between 5 and 10: ");
                    }
                    else Console.Write("Sorry, you entered an invalid number, please try again: ");
    
                } while (numValue < 5 || numValue > 10);
    
                Console.WriteLine($"Your input value ({numValue}) has been accepted.");
            }
        }
    }
    ваш код работает абсолютно корректно, что смутило не понятно вообще ))
    2WhBpyZ.png

    ps подправил код, еще лайфхак, может понравится ;))
    pps и еще по мелочи, может понравится ;)
    namespace ConsoleApp4
    {
        internal static class Program
        {
            static void Main(string[] args)
            {
                var numValue = 0;
                var inValidValue = false;
                var validNumber = false;
                "Enter an integer value between 5 and 10:".print();
                do
                {
                    validNumber = int.TryParse(Console.ReadLine(), out numValue);
                    inValidValue = numValue < 5 || numValue > 10;
    #if DEBUG
                    $".. debug 'numValue={numValue}'".print();
                    $".. debug 'validNumber={validNumber}'".print();
                    $".. debug 'validValue={inValidValue}'".print();
    #endif
                    if (validNumber)
                    {
                        if (inValidValue)
                            $"You entered {numValue}. Please enter a number between 5 and 10: ".print();
                    }
                    else "Sorry, you entered an invalid number, please try again: ".print();
                } while (inValidValue);
                $"Your input value ({numValue}) has been accepted.".print();
            }
            static void print(this string s) => Console.WriteLine(s);
        }
    }

    .. почувствуйте разницу ;)))

    ppps .. кхм.. думал извращения закончились )))
    namespace fanc_minimal
    {
        internal static class Program
        {
            static void Main(string[] args)
            {
                string checkValue(bool goodValue, bool correctNumber, int Value) => (goodValue, correctNumber) switch
                {
                    (true, true) => $"Your input value ({Value}) has been accepted.",
                    (false, true) => $"You entered {Value}. Please enter a number between 5 and 10:",
                    _ => "Sorry, you entered an invalid number, please try again:"
                };
    
                Console.WriteLine("Enter an integer value between 5 and 10:");
                for (var validValue = false; !validValue; )
                {
                    var validNumber = int.TryParse(Console.ReadLine(), out var numValue);
                    Console.WriteLine(checkValue(validValue = numValue >= 5 && numValue <= 10, validNumber, numValue));
                }
            }
        }
    }
    но это пример оголтелого минимализма строк ))
    читаемость уже резко страдает... зато в одном флаконе много фишек, которых в книгах не найти. всем успехов в кодировании ))
    .. продолжаем издеваться над стереотипами ;))
    namespace func_next
    {
        internal static class Program
        {
            static void Main(string[] args)
            {
                const int min = 5;
                const int max = 10;
                var value = min - 1;
                var stop = false;
    
                bool success() => value >= min && value <= max;
    
                string check() => (int.TryParse(Console.ReadLine(), out value), stop = success()) switch
                {
                    (true, true) => $"Your input value ({value}) has been accepted. Press Enter to Exit )))",
                    (true, false) => $"You entered {value}. Please enter a number between 5 and 10:",
                    _ => "Sorry, you entered an invalid number, please try again:"
                };
    
                for ("Enter an integer value between 5 and 10:".print(); !stop; check().print()) ;
            }
            static void print(this string s) => Console.WriteLine(s);
        }
    }
    .. и снова.. лишь пример перфекционизма.. но код содержит взаимозависмости, не допустимые в большом проекте ))
    .. но уж сильно захотелось уйти от вложенных if .. ну и показать мощь сишныхfor )))
    ... тут уже скорее ретушь.. чуть поближе к продашен стилю
    namespace func_next
    {
        internal static class Program
        {
            static void Main(string[] args)
            {
                const string welcome = "Enter an integer value between 5 and 10:";
                const int min = 5;
                const int max = 10;
                var value = min - 1;
                var stop = false;
    
                bool success() => value >= min && value <= max;
                bool valid() => int.TryParse(Console.ReadLine(), out value);
    
                string check() => (valid(), stop = success()) switch
                {
                    (true, true) => $"Your input value ({value}) has been accepted.",
                    (true, false) => $"You entered {value}. Please enter a number between 5 and 10:",
                    _ => "Sorry, you entered an invalid number, please try again:"
                };
    
                for (welcome.print(); !stop; check().print()) ;
            }
            static void print(this string s) => Console.WriteLine(s);
        }
    }
    .. кхи.. перфекционизм цветет.. но сам не ожидал некоторых вещей )) .. но тут уже и логика прозрачная и читаемая ))
    namespace func_next
    {
        internal static class Program
        {
            static void print(this string s) => Console.WriteLine(s);
            static void Main(string[] args)
            {
                const int min = 5;
                const int max = 10;
                var value = min - 1;
    
                string welcome() => $"Enter an integer value between {min} and {max}:";
                string accepted() => $"Your input value ({value}) has been accepted.";
                string repeat() => $"You entered {value}. Please enter a number between {min} and {max}:";
                const string ups = "Sorry, you entered an invalid number, please try again:";
    
                bool valid() => int.TryParse(Console.ReadLine(), out value);
                bool success() => value >= min && value <= max;
    
                var stop = false;
    
                string check() => (valid(), stop = success()) switch
                {
                    (true, true) => accepted(),
                    (true, false) => repeat(),
                    _ => ups
                };
    
                for (welcome().print(); !stop; check().print()) ;
            }
        }
    }
    шарм ситуации в том, что тушка программы сводится к строкеfor (welcome.print(); !stop; check().print()) ; а все остальное - лишь определение "понятий"... обожаю функциональный стиль ))
    ..чем дальше в лес, тем веселее ))
    namespace func_next
    {
        internal static class Program
        {
            static void print(this string s) => Console.WriteLine(s);
            static void Main(string[] args)
            {
                var min = 5;
                var max = 10;
                var value = min - 1;
    
                string welcome() => $"Enter an integer value between {min} and {max}:";
                string accepted() => $"Your input value ({value}) has been accepted.";
                string repeat() => $"You entered {value}. Please enter a number between {min} and {max}:";
                const string ups = "Sorry, you entered an invalid number, please try again:";
    
                var valid = false;
                bool get() => valid = int.TryParse(Console.ReadLine(), out value);
                bool success() => value >= min && value <= max && valid;
    
                var stop = false;
    
                string check() => (get(), stop = success()) switch
                {
                    (true, true) => accepted(),
                    (true, false) => repeat(),
                    _ => ups
                };
    
                for (welcome().print(); !stop; check().print()) ;
            }
        }
    }
    .. тут уже полшага до модификации min/max на ходу ;))
    ... как и было обещано.. но см в каментах.. ответ превысил 10к символов ;))
    uznwPSD.png

    (примеры реализованы в vs 2022, dotnet 8, по тому и без юзингов )) .. но каждая версия из ответа и каментов, испытана в студии, абсолютно рабочая, и все идентичны по поведению исходному коду вопроса ))
    Ответ написан
  • Как синхронизировать Win11 и смартфон только через WiFi?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    еще инструмент - kdeconnect
    давно не проверял, но вроде есть и виндовая сторона. для андроид и линукс точно есть. и это 100% не через облака

    ps
    но вроде есть и виндовая сторона
    проверил, точно есть )))
    очень даже не плохой инструмент. и точно по вафле ))

    pps для osx и ios тоже есть ))).. так что достойный и универсальный вариант ))
    Ответ написан
    Комментировать
  • Как заставить Debian-based дистрибутивы нормально работать под любой видеокартой?

    mindtester
    @mindtester
    http://iczin.su/hexagram_48
    ubuntu и mint имеют комфортные встроенные средства для загрузки свежих дров nvidia и amd. в fedora, к примеру, тоже всегда доступны дрова в расширенных репах, но там просто надо нагуглить инструкцию и пользовать командную строку, не сложно. дрова intel входят чуть ли не в ядра, но точно есть во всех дистрибах уже годами.
    но при смене карты, все равно необходима переконфигурация. в тех же ubuntu и mint, имеет смысл откатить на фри дефолтные дрова перед заменой карты. я так думаю..
    в целом, все таки, ubuntu и mint самые комфортные - все из гуи, настройки делаются автоматом.
    ubuntu - все в силе для деривативов типа kubuntu и тд.
    Ответ написан
    Комментировать
  • Какое числовое значение комбинаций с клавишей WIN?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    win это "модификатор", как shift, ctrl и alt..
    они проверяются отдельно, как флаги (это традиционный вин апи)
    эфки уже имеют собственные коды. модификаторы тоже генерируют коды нажатия (и отжатия, это вообще каждая кнопка)
    в вашем случае скорее надо ловить событие нажатия эфки в сочетании с флагом модификатора. возможно ли это в используемом инструменте? сори, не знаю.
    ну и для эрудиции, может поможет ))
    Скан-коды клавиатуры

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

    pps
    если я угадал порядок, допустим ctrl+shift+1 -> (10+20, 31) -> 3031 -> KeyDown/Up 12337
    .. ctrl+shift+9 -> (10+20, 39) -> 3039 -> KeyDown/Up 12345
    подробности в каментах

    ppps от автора вопроса
    Я узнал, что раньше эта же прога с win+цифра у других людей работала нормально, но в какой-то момент просто перестала.
    .. немного досадно ))
    но может кому то пригодится общий анализ ситуации (см в каментах)
    всем успехов ))
    Ответ написан
    33 комментария
  • Запуск приложений с другой OC на диске?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    на прямую - нет.
    варианты:
    - wsl2 с gui (есть нюансы, в частности поддержка gpu планировалась, но не в курсе реализована ли)
    - виртуалка, но точно будут проблемы с использованием gpu (только частичный проброс фич, у вмвари лучше, но она платная)

    ps ответ был для запуска линукс приложений под виндой. возможно не сразу понял вопрос.. но если из под линукс хотите запускать? тоже - нет.
    wine позволит устанавливать виндовые приложения. но точно не все. и снова сомнения по возможностям gpu. но такую связку знаю еще меньше. может кто подробнее скажет

    pps все таки подумайте что вам надо от линукс? возможно первая часть моего ответа поможет вам получить все хотелки более комфортно.
    Ответ написан
    Комментировать
  • Почему в простое занято больше половины ОЗУ?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    когда последний раз интересовался темой поглубже, выяснилось, что винда любит от 50% свободной памяти использовать под дисковый кеш.. или не только дисковый..
    оценивайте общее субъективное быстродействие. если комфортно - получайте удовольствие
    Ответ написан
    Комментировать
  • Как сделать новую static переменную в наследнике? Или как обойтись без этого?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    а вы уверенны что хорошо понимаете смысл static?
    вам нужен уникальный id для класса? или экземпляра?
    подумайте и почитайте доки.
    для класса достаточно объявлять readonly а не static

    ps а для экземпляра и подавно рандомный readonly

    pps по ходу static id предка будет наследоваться для всех. это суть static
    Ответ написан
    Комментировать
  • Из-за некоторых программ, при попытке сделать скришот сворачиваются полноэкранные игры. Как это пофиксить?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    Я не знаю ни одной другой программы, у которой скриншоты попадают в буфер обмена сразу, без копирования файла.
    ShareX прбовали? прога мощная и гибкая. разобравшись в настройках можно шикарно настроить под свои хотелки.
    можно гуглануть и загрузить с сайта, можно из магазина винды 10+, так же есть в списке распространяемых бесплатно у steam

    ps пс, если у вас запользован OneDrive, будут конфликтовать за PtrScr. в настройках OneDrive можно отключить автосохранение скриншотов в облако, или настроить хоткеи ShareX что бы обойти конфликт.
    Ответ написан
  • Как перенести АТС на базе Asterisk в виртуальную среду?

    mindtester
    @mindtester
    http://iczin.su/hexagram_48
    может линуксоиды смеяться будут ))
    но если ФС ext4, то даже акронисом можно сделать образ, а потом поднять на виртуалке. при этом линукс обычно очень хорошо перестраивается в плане дров. клиентские можно ручками догрузить (вмварь или что там у вас будет на гипервизоре. клиент виртулбокса вообще обычно по дефолту в большинстве дистрибутивов, может во всех )))

    ps efi boot это fat32, swap тоже цепляется )))
    а админских iso с акронисом как собак не резаных в сети )))

    pps а вот если потом надо будет подвигать разделы, acronis disk director уже не пляшет. если в fstab привязка по айди, и бутовский раздел первый, сдвигаете своп и расширяете другие разделы линуксовыми инструментами, гуи или командной строки, но уже все по классике. гуглимо. удачи
    Ответ написан
    5 комментариев
  • Как по другому сделать?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    а что говорит компилятор? и справка по ошибке?
    .. там и делайте выводы
    Ответ написан
    Комментировать
  • Как сделать браузер хром по умолчанию?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    настройки -> приложения по умолчанию
    Ответ написан
    8 комментариев
  • SSH/Ftp как сетевой диск (с буквой) под Win11 как?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    покопайте в сторону webdav, если он доступен у хостера. технология популярная, возможно доступна у Вас

    ps в любом случае существует уже множество механизмов публикации приложения/сайта на хост. Pycharm, как и большинство продвинутых сред разработки, поддерживает все популярные.
    Ответ написан
  • Не загружается операционная система?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    а гугл отсох? ошибка описана..
    очень простые размышления по описанию:
    - кривая флешка/образ (запросто)
    - физическая неисправность памяти ноута
    - физическая неисправность носителя
    все. от слова совсем все. в порядке наиболее вероятном.
    рекомендовал бы попробовать записать другой образ на флешку для анализа для начала.
    сам последние годы доволен этим (тесты для памяти и носителя там в достатке)
    https://sergeistrelec.ru/winpe_10_8/
    Ответ написан
    Комментировать
  • Как правильно создать назначенное задание, чтобы работало с привилегиями?

    mindtester
    @mindtester
    http://iczin.su/hexagram_48
    после всего прочтенного..
    Вы можете удаленно запустить приоритетное задание скриптом?
    не обязательно с сервера, со своего рабочего места?
    если да - осталось дополнить скрипт получением списка рабочих станций, потом что то типа foreach...
    если нет - научиться удаленно запустить приоритетное задание скриптом ))
    Ответ написан
    Комментировать
  • Почему ноут не выдает нужные скорости интернета при закрытии крышки?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    в силу всего что уже проговорено, предложил бы надежное решение - вайфай адаптер на комп.
    - нет зависимости
    - равноправность в локалке сохраняется

    ps убежден что достаточно внимательно изучить настройки типа "поведение при закрытии крышки".. но автор вопроса категоричен ))

    pps есть еще более тонкие настройки, но их уже надо внимательно смотреть. Yukan Mukimura, если хотите, могу предложить сеанс по teamviewer или anydesk. мои координаты в профиле. но совет hint000 стоит проверить все равно )) тем более что это явно не долго и не сложно ))
    Ответ написан
  • PostgreSQL. Как подтянуть уже имеющийся каталог с базами?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    postgresql подключить существующую базу данных
    не помогает??

    ps а в настройках 1С сервер освежили?
    Ответ написан
  • Есть ли программа для ограничения громкости на отдельном устройстве вывода звука?

    mindtester
    @mindtester Куратор тега Windows
    http://iczin.su/hexagram_48
    многие производители звуковых контроллеров предлагают на своих сайтах расширенный комплект софта. как правило там есть продвинутые микшеры.
    для примера чипы realtek опознаются виндой, но устанавливаются только драйвера. но если загрузить пакет от realtek, там будет микшер.

    ps так же расширенный пакет, заведомо совместимый, можно получить на сайте производителя материнки/ноута.
    Ответ написан
    Комментировать