Довольно плотно занимаюсь разработкой сайтов на WordPress. CMS мне нравится, но сказать что в ней нет недостатков я не могу. Поскольку это opensource проект, то мне хотелось бы помочь исправить те недостатки которые я вижу. Собственно вопрос - что для этого нужно сделать? На каком сайте нужно писать исправленные фрагменты кода, и вообще интересно как происходит весь этот процесс.
Ответ
ответ на основании комментариев к вопросу: здесь следует создавать новые (и искать существующие) сообщения об ошибках. инструкция о том, как можно помочь проекту, находится здесь
Здравствуйте. Стоит Ubuntu 13.04+Windows 8. Есть раздел жесткого диска W: и он играет роль хранилища для Apache.
В Ubuntu он монтируется в /var/www, а в Windows просто W: и все настроено на него. Я себе так сделал, чтоб можно было под разными осями кодить без переносов файлов, да и просто очень удобно - типа рабочий диск.
Проблема в том, что Ubuntu при монтировании удаляет букву и под виндой приходится постоянно вручную назначать. Причем Ubuntu затирает букву, даже когда я в нее не захожу - наверно еще на этапе grub.
Кто-нибудь знает как кодом (С/С++/С#, Java, DOS .bat и т.д.) написать скрипт/программу под винду, чтоб можно было добавить в автозапуск и он при входе автоматически монтировался.
Ответ
Здравствуй, не предоставлю полного решения, но возможно подтолку вас в правильном направлении. Прочитав вашу задачу думаю вам нужно испортировать функции из kernel32.dll. Насколько я понял, вам может подойти SetVolumeMountPoint метод.
SetVolumeMountPoint - w32api - Справочник по Windows API
Попробуйте. Посмотрите так же C# how to mount and unmount a virtual drive. Не совмем то, но что бы понять принцип.
Доброго времени суток, у меня стоит интересная задачка в ходе корой мне необходимо менять пароль пользователя в ходе выполнения скрипта. Из всего что я знаю о фряхе я остановился на команде passwd, но так как она получает пароль только при вводе, пытался вызвать ее через popen и в поток забить новый пасс, но увы ничего не удалось...
P.S. по факту мне нужно создать пользователя, но команда pw не принимает пароль, насколько я понял. и связи с этим приходится искать решение выше указанного геморроя
Ответ
Думаю, man 3 forkpty это то, что Вам нужно. Там через псевдотерминал (pty) надо работать. В принципе, не очень сложно написать некий двунаправленный аналог popen() на псевдотерминале вместо pipe. Например, expect делает так в spawn Например, можно почитать здесь. Или покороче здесь. Идея в том, что Вы делаете псевдотерминал (это как бы связка из двух устройств -- master и slave (ведет себя аналогично обычному tty)), делаете fork и там dup дескрипторов 0,1,2 на slave, после exec passwd она считает, что работает с терминалом. Родительский процесс обменивается байтиками по master
ответ составлен из комментариев, написанных avp к вопросу.
Я правильно понял, что если я запишу:
try {
char * str = new char[30];
throw "exception";
delete [] str;
} catch(...) {
//здесь ничего не будем делать
}
то произойдет утечка памяти? А если запишу без delete, то утечки памяти не будет?
Также меня интересует, что если исключения произойдет по условию, то как быть с удалением, или же память удалит С++ сам?
Если я не буду возбуждать исключения, то НЕ будет утечки? Например:
try {
char * str = new char[30];
//кое-что делаем, но исключения не возбуждаем.
delete [] str;
} catch(...) {
//ничего не делам
}
И в каких случаях память нужно удалять память в catch?
Ответ
char *str = nullptr;
try {
str = new char[30];
throw "exception";
delete [] str;
} catch(...) {
delete [] str;
}
По Стандарту, применение оператора delete к указателю на уже очищенную память игнорируется. В C++ блока finally нет, потому можно сделать так. Или обернуть строку умным указателем, который в деструкторе автоматически дернет delete.
ЗЫ Но вообще, советуют правильно, если это С++, то нужно по возможности пользоваться классами стандартной библиотеки в общем и std::string в частности.
Есть система, на которой установлено множество пакетов и произведено множество настроек. Как создать iso образ этой системы сохраняя все настройки? Пробовал remastersys, но никак не могу установить ее ни с репозиториев, ни с исходников. Вариант подобный "Suse Studio" для Ubuntu тоже рассматривается UPD: Для решения задачи подошла программа "relinux"
Ответ
Для клонирования Linux системы можно воспользоваться средствами MondoRescue. Они позволяют сохранить работающую систему на диск и восстановить систему с диска.
Добрый вечер!
На досуге занимаюсь разработкой собственного сайта и возникли трудности в создании off-canvas меню. Структура страницы состоит из трёх блоков - "шапка", меню и содержимое.
Изначально меню видно. Ширина меню составляет 20% от ширины контейнера, ширина блока с содержимым - 80%.
Упрощённо, задача заключается в том, что при нажатии на кнопку "Меню", меню плавно смещается за край контейнера. В свою очередь блок содержимого плавно растягивается до 100% от ширины контейнера.
При повторном нажатии на кнопку "Меню", слева плавно выходит меню, которое занимает 20% от ширины контейнера. В свою очередь ширина блока с содержимым плавно уменьшается до 80%. Именно уменьшается, а не частично смещается за край контейнера. (именно это заставило писать своё решение).
Схематически это выглядит так:
Появление/исчезновение меню я достиг за счёт css свойства "transform: translate3d(-100%, 0, 0)". Проблема в том, что при смещении меню за край контейнера, блок содержимого хоть и растягивается до 100%, но "падает" вниз из за нехватки места. Понимаю, что за меню остались те самые 20% от ширины контейнера.
Как быть?
Буду очень Вам благодарен за помощь!
Код:
HTML: