Задать вопрос
  • Как правильно собрать проект на C#?

    arxont
    @arxont
    C# программист
    Надо сделать две вещи -
    1) Добавить в app.config параметр probing - https://docs.microsoft.com/en-us/dotnet/framework/...
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
        </startup>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <probing privatePath="Libs" />
        </assemblyBinding>
      </runtime>
    </configuration>


    2) Вторым шагом мы должны переместить dll в эту папку - для этого в свойствах проекта, переходим на вкладку "Build events" и в разделе Post-build добавляем следующее -
    mkdir $(TargetDir)Libs
    move $(TargetDir)*.dll $(TargetDir)\Libs\

    5a5961969771c693186767.png
    Ответ написан
    3 комментария
  • Как и на чем лучше сделать приложение с таким интерфейсом (пример на windows form)?

    @kttotto
    пофиг на чем писать
    Не понятен вопрос, ибо "проще" понятие растяжимое и субъективное. Если Вы не слышали о WPF, то советую на него обратить внимание. Он не проще винформов, но он умеет решать те задачи, которые Вы описали. Если не найдете внутри нужных контролов, то на просторах инета найдете кучу дополнительных.
    Ответ написан
    Комментировать
  • Майнинг на старом железе с новыми видеокартами?

    GavriKos
    @GavriKos
    А что, еще имеет смысл собирать 1-2 компьютера под майнинг? Сложность и китайские фермы никак не помешают?
    Ответ написан
    2 комментария
  • Как сделать безлимитный массив?

    В C не бывает безлимитных массивов. Ничего безлимитного вообще нигде не бывает, а в C массив это именно статический массив фиксированного размера, вы создаете массив из одного char'а. Обычно делается динамический буфер который растет от некоторого начального размера и кратно увеличивается по мере необходимости (обычно в 1.5 или 2 раза), можно растить буфер через realloc, как-то примерно так

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    #define BUFSIZE 64
    
    char * getl() {
        char *buf;
        size_t bufsize = BUFSIZE;
        size_t inbuf = 0;
    
        buf = malloc(bufsize);
        if(!buf) return NULL; /* ошибка */
        do {
            if(inbuf >= bufsize - 1){ /* если в буфере кончается место */
                bufsize = bufsize + (bufsize>>1); /* умножение на 1.5 */
                if(!(buf = realloc(buf, bufsize))) return NULL; /* пытаемся увеличить буфер до нового размера, проверяем получилось ли */
            }
            if(!fgets(buf+inbuf, bufsize-inbuf, stdin)) break;
            inbuf +=  strlen(buf+inbuf);
        } while(buf[inbuf - 1] != '\n');
        return buf;
    }
    
    int main(){
        char * l;
    
        l = getl();
        if(l){
            printf("line: %s\nstrlen: %zd\n", l, strlen(l));
            free(l);
        }
        
        return 0;
    
    }
    Ответ написан
    Комментировать
  • В чем заключается сакральный смысл .Net Core?

    @kttotto
    пофиг на чем писать
    Любую задачу можно эффективно решить и под core и под java. Но как по мне, то на C# мне надо меньше телодвижений делать и есть моменты, которые работают эффективнее, чем в java (все-таки C# помоложе и учитывал ошибки конкурентов). Плюс java более инертная, .net развивается быстрее, быстрее реагирует на потребности и если говорить об enterprise, то я считаю, что у .net перспектив больше.
    Ответ написан
    3 комментария
  • Какие решения для создания UI вы используете?

    @kttotto
    пофиг на чем писать
    Windows Forms устаревшая технология. Сейчас для десктопа под виндовс разрабатываются на WPF. Там спецом все сделано для возможности гибкого дизайна.
    Ответ написан
    3 комментария
  • RAID1 на SSD - есть ли смысл?

    Jump
    @Jump
    Системный администратор со стажем.
    RAID1 на SSD — есть ли смысл?
    Никто кроме вас не знает. Если вам для решения задач нужно зеркало, значит имеет смысл, если не нужно - не имеет. Все просто.

    Умрут же хором... или я не прав?
    Это почему??? Разумеется неправы. Откуда такие мысли?
    Ответ написан
    6 комментариев
  • RAID1 на SSD - есть ли смысл?

    @nfire
    С чего им умирать хором? Если так переживаете, то возьмите о разных производителей. Но смысла в этом нет. При достижении максимума перезаписи ссд переходит в режим только для чтения. И бэкапы никто не отменял.
    Ответ написан
    4 комментария
  • Java или C++ в качестве первого языка. Что выбрать?

    solotony
    @solotony
    покоряю пик Балмера
    начни с обычного "С" (без плюсиков). и чтения дедушки Кнута. но это в том случае если хочешь научиться программировать.
    Ответ написан
    9 комментариев
  • Где найти достоверную и полную информацию о платформе .net?

    @PushMeNow
    .NET Developer
    Во-первых, на MSDN есть вся информация по .net (не представляю, что вы искали, если не нашли), которая была создана Microsoft(!). Другое дело если рассматривать библиотеки не от них: тут уж самому нужно искать на просторах интернета. Во-вторых, если вы новичок, то зачем вам весь .net, выберите что-то одно (скажите спасибо что есть из чего выбирать c#,c++,c,vb и т.д.) и изучайте.
    Ответ написан
    Комментировать
  • Какие есть it-профессии, где не нужно писать код?

    opium
    @opium
    Просто люблю качественно работать
    Во первых у программиста отработал восемь часов и свободное время
    Ну и как то учебу у врачей которая длится у них всю рабочую жизнь вы почему то вывернули, потому что вы ее не видите в поликлинике, некоторым капец как надо все время учиться
    Вообще работать замёрзших во времени где не надо учиться не так много, дворник там и тому подобное
    Ответ написан
    Комментировать
  • Какие есть it-профессии, где не нужно писать код?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    на врача/юриста/кого-то ещё выучился и работаешь рабочий день, остальное время свободно.

    Смешно...
    Врач любой специализации любой квалификации раз в пять лет проходит "переподготовку", изучая что появилось нового и подтверждая свою классность. Знаю вовсе не понаслышке. И постоянно в течение работы изучает что-то изучает, изучает...
    Любая профессия требует постоянного совершенствования, если конечно хочется добиться чего-то.
    Работники неквалифицированного труда - тем ничего не надо. Раньше можно было встать к конвейеру - вот где пустота в голове! Не, можно ошиваться в ИТ и не совершенствоваться постоянно - тянуть провода, менять картриджи в принтерах, коробки таскать - если ИТ-отдел настолько велик, что может позволить себе держать такого "подай-принеси-уйди-не_мешай"
    Ответ написан
    1 комментарий
  • Какие есть it-профессии, где не нужно писать код?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Младший техник у какого-нить провайдера. тянуть и обжимать проводочки.
    Саппорт в call центре.

    Сисадмин (нормальный), тоже должен знать и учить новые технологии и библиотеки.

    P.P.S. "Например, на врача/юриста/кого-то ещё выучился и работаешь рабочий день, остальное время свободно. "

    Ахаха... ты реально думаешь что юриспруденция за последние несколько лет не поменялась? Да хотя бы гиктаймс почитай какие новые громкие законопроекты только в области ИТ были приняты за последние полгода. Что уж говорить про те, которые не слишком громкие, или которые никто не понял?
    Ты реально думаешь, что врачи сейчас лечат также, как 10 лет назад? В стоматологии поменялось почти все - материалы, подходы. В клинической лаборатории даже стандартные нормативы. У окулистов жизнь поменялась уже пару раз.

    Мало нового происходит у младшего специалиста с минимальной зарплатой. И то...
    Ответ написан
    Комментировать
  • Где найти открытый проект на C# для изучения чужого кода?

    NightmareZz
    @NightmareZz
    Нищий разработчик из Симферополя
    Ответ написан
    Комментировать
  • Как сделать textbox похожим на input type="number" из html?

    arxont
    @arxont
    C# программист
    А зачем в таком случае использовать textBox? Не проще взять компонент NumericUpDown?
    Ответ написан
    Комментировать
  • Насколько реальна моя мечта по созданию и продвижению сайта?

    sabramovskikh
    @sabramovskikh
    А почему мы тебе бесплатно будем отвечать? Давай бабки кидай сюда.

    Идея на 99,9 провальная. Есть куча бесплатных сервисов для ответов. Чем ваш отличается то?
    Ответ написан
    2 комментария
  • Как правильно собрать кроссплатформенный проект?

    tsarevfs
    @tsarevfs Куратор тега C++
    C++ developer
    MyClass_L.cpp и MyClass_W.cpp нужно тоже целиком завернуть в ifdef
    Либо, что наверно более правильно, надо сказать вашей системе сборки (qmake я так понимаю), что надо собирать только нужные cpp.
    doc.qt.io/archives/qt-4.8/qmake-tutorial.html "Adding Platform-Specific Source Files"
    Ответ написан
  • Как правильно собрать кроссплатформенный проект?

    MAKAPOH
    @MAKAPOH
    многостаночник
    Я в своих мелких проектах пишу примерно так (система сборки qbs):
    Group {
            name: "cpp_os_specific"
            prefix: "src/cpp/utils/"
            files: {
                if (qbs.targetOS.contains("windows"))
                    return ["utils_windows.cpp", "utils.h"];
                if (qbs.targetOS.contains("linux"))
                    return ["utils_linux.cpp", "utils.h"];
            }
        }

    Соответственно при сборке на разных платформах просто используются разные файлы, никаких разных имён классов или #if defined не нужно.
    Насколько это может быть удобно/неудобно на больших проектах не знаю.

    P.S.
    По поводу qbs, к сожалению генератора проектов из Qt Creator, нет. По крайней мере раньше не было, я давно туда не заглядывал. Но если написать файл проекта руками то он нормально открывается в Qt Creator (qbs плагин обычно включён по умолчанию).
    Пример файла сборки qbs:
    spoiler
    import qbs 1.0
    
    Product {
        type: "application"
        name: "timer_qml"
        consoleApplication: false
    
        Group {
            name: "cpp"
            prefix: "src/cpp/"
            files: ["*.cpp", "*.h"]
        }
    
        Group {
            name: "cpp_os_specific"
            prefix: "src/cpp/utils/"
            files: {
                if (qbs.targetOS.contains("windows"))
                    return ["utils_windows.cpp", "utils.h"];
                if (qbs.targetOS.contains("linux"))
                    return ["utils_linux.cpp", "utils.h"];
            }
        }
    
        Group {
            name: "resources_and_qml"
            prefix: "src/qrc/"
            files: ["*.qrc", "*.qml"]
        }
    
        Depends {
            name: "Qt"
            submodules: {
                if (qbs.targetOS.contains("windows"))
                    return ["core", "widgets", "gui", "sql", "quick", "qml"];
                if (qbs.targetOS.contains("linux"))
                    return ["core", "widgets", "gui", "sql", "quick", "qml", "x11extras"];
            }
        }
    
        Depends {
            name: "cpp"
        }
        cpp.staticLibraries: {
            if (qbs.targetOS.contains("windows"))
                return ["user32"];
            else
                return [];
        }
        cpp.cxxFlags: {
            if (qbs.toolchain.contains("gcc") || qbs.toolchain.contains("mingw"))
                return ["-std=c++11"];
            else
                return [];
        }
        cpp.dynamicLibraries: {
            if (qbs.targetOS.contains("linux"))
                return ["Xss", "X11"];
            else
                return [];
        }
    
        Group {
            name: "App itself"
            fileTagsFilter: parent.type
            qbs.install: true
            qbs.installDir: "bin"
        }
    }


    По официальной документации можно за пару вечеров освоить.
    Ответ написан
    6 комментариев
  • Подключение к UTP-кабелю?

    Проще купить свитч за 300 рублей и воткнуть его в нужном месте.
    Ответ написан
    Комментировать
  • Как проверить существует ли значение в реестре?

    arxont
    @arxont
    C# программист
    using Microsoft.Win32;
     
    // ...
     
    if (Registry.GetValue(@"HKEY_CURRENT_USER\Software\Key-Name", "Value-Name", null) == null)
    {
      // ...
    }
    Ответ написан
    Комментировать