Не устанавливаются файловые ассоциации win7?

Здравствуйте, самостоятельно я так и не справился с проблемой следующего характера: есть десктоп со свежей лицензионной win7 pro rus. На нем не устанавливаются никакие ассоциации для файлов. Например, щелкаю правой кнопкой на файл .rb, выбираю «Открыть с помощью...». Во-первых, в списке программ нет ничего, кроме дефолтных программ. Во-вторых, я нажимаю «Обзор», иду в %programmfiles%, выбираю исполняемый файл нужного мне редактора, щелкаю «ок», диалог закрывается и в начальном диалоге я все равно не вижу выбранной только что мною программы. Тоже самое происходит, если я пытаюсь назначить ассоциацию в апплете «Программы по умолчанию». Я понимаю, что можно залезть в реестр и оттуда выставить для всех нужных мне расширений ассоциации руками, но долго это и костыль, сами понимаете. Переустанавливать ее некогда, да и не за чем. Быть может, существуют другие решения моей проблемы? Спасибо.

Нашел только описание такой же проблемы у другого человека, но со скриншотами:
forum.oszone.net/post-1321386-17.html

Windows    

260   3   21:06, 1st October, 2020


Не виден DVD дисковод в Acer Aspire 5520?

Некоторое время назад перестал определяться (в проводнике Windows) CD/DVD дисковод в ноутбуке Acer Aspire 5520. Естественно, никакие диски не читаются.


Может ли это быть следствием каких-то проблем с лазерами или какими-то другими оптическими элементами? Или если бы это было так, то дисковод все же определялся бы как уст-во? Правильно ли я понимаю, что чистка этих оптических элементов/датчиков не поможет?


Пытался вынуть дисковод на предмет проверки контактов и возможности самостоятельной замены на другой дисковод, но, к моему стыду, не получилось. То есть если сзади открыть крышку сложной формты, можно получить доступ к модулям памяти, вентилятору, ЖД, м.б. даже процессору, но к DVD ROM нет прямого доступа (если я ничего не проглядел).

Никто случайно не имеет опыт разборки Acer Aspire 5520?


И еще, можно ли каким-либо программным способом обнаружить/диагностировать ошибку? Может быть какой-то конфликт ресурсов и т.п.? ОС — Windows Vista.

Сделай   сам   DVD    

390   6   21:06, 1st October, 2020


Вопрос к PERL программистам

Есть perl демон:

#!/usr/bin/perl -w
###Подключение всех необходимых модулей###
use strict;
use POSIX;
use POSIX ":sys_wait_h";
use IO::Socket;
use IO::Handle;
###Создаем процесс-демон###
my $pid= fork();
exit() if $pid;
die "Couldn't fork: $! " unless defined($pid);
###Создаем связь с новым терминалом###
POSIX::setsid() or die "Can't start a new session $!";
###Переменная - бесконечное время жизни сервера###
my $time_to_die =0;
###Переменная - интернет-сокет или сервер###
my $server;
###Функция обработчик сигналов INT и TERM###
###Она срабатывает перед этими сигналами###
sub signal_handler{
  $time_to_die = 1;
  close($server);
}
$SIG{INT}= $SIG{TERM} = $SIG{HUP} = \&signal_handler;

###Функция обработчик сигнала CHLD - для уборки процессов зомби ###
sub REAPER {
  while ((my $waitedpid = waitpid(-1,WNOHANG)) > 0) { }
  $SIG{CHLD} = \&REAPER
}

###Заполняем массив разрешенных команд при старте сервера###

###Создаем интернет сокет на порту 17403###
my $server_port=17403;
$server= new IO::Socket::INET(LocalPort => $server_port,
                 TYPE => SOCK_STREAM,
                 Reuse => 1,
                 Listen => 10)
or die "Couldn't be a tcp server on port $server_port: $@\n";
###Сервер работает до бесконечности пока его не вырубит Term ###
until($time_to_die){
  my $client;
  my $req;
  ###Обрабатываем входящие подключения
  while($client = $server->accept()){
    ###Включаем обработку зомби###
    $SIG{CHLD} = \&REAPER
    ###Тот который постучался, отделяем в отдельный процесс###
    defined(my $child_pid=fork()) or die "Can't fork new child $!";
    ###Родительский процесс идет в конец и ждет следующего подключения###
    next if $child_pid;
    ###Дочернему процессу копия сокета не нужна, её закрываем###
    if($child_pid == 0) {
      close($server);
    }
    ###Очистка буфера###
    $client->autoflush(1);
    my $response = <$client>;
    my @get_req = split(' ', $response);
    print $client $get_req[1];
  exit;
  }
  continue {
    close($client);
  }

}


* This source code was highlighted with Source Code Highlighter.


Данный демон запускается и слушает указанный порт, и при запросе к нему скажем через браузер.
sitename.ru:17403/?param=1&param2=2
он создаст процесс свою копию, обработает запрос этим процессом и отдаст клиенту "/?param=1&param2=2". После этого закроет этот процесс.

Вопрос в том, всё ли правильно написано и всё ли правильно я понимаю и главное будет ли это работать так как я описал?

Perl    

316   3   21:06, 1st October, 2020


Юридическая сторона интернет магазина

Хочу открыть интернет магазин. Надо ли регистрировать его? Если да, то как ИП или как юр.лицо. Или на первое время можно вообще не регистрировать?

Интернет-магазины   Интернет-реклама    

236   8   21:06, 1st October, 2020


JSONP в UserJS для Chrome

Подскажите как реализовать JSONP в UserJS для Chrome? Я так понимаю что расширения не имеют доступ к глобальному объекту?

1) Т.е невозможно объявить myCallback, чтобы скрипт возвратил myCallback(JSON)

Получить доступ к возвращаемому скриптом:

2) callbackVar = JSON, чтобы была возможность удалить globalObj[callbackVar], а также возможность по таймауту выдать сообщение об ошибке
3) ну или var callbackVar = JSON

также не получается.

Нужно перенести UserJS из Оперы.

Google   Chrome   JSON    

354   1   21:06, 1st October, 2020


Пишете ли вы исключения для конкретных вопросов или общие исключения?

У меня есть код, который дает идентификатор пользователя утилите, которая затем отправляет email этому пользователю.

emailUtil.sendEmail(userId, "foo");

public void sendEmail(String userId, String message) throws MailException {
    /* ... logic that could throw a MailException */
}

MailException может быть брошен по ряду причин, проблем с адресом email, проблем с шаблоном почты и т.д.

Мой вопрос заключается в следующем: вы создаете новый тип исключения для каждого из этих исключений, а затем обрабатываете их по отдельности или создаете один MailException, а затем сохраняете что-то в исключении (что-то машиночитаемое, а не текст описания), что позволяет нам делать разные вещи на основе того, что на самом деле произошло.

Edit: как уточнение, исключения не предназначены для журналов, а что-нет, это относится к тому, как код реагирует на них. Чтобы продолжить работу с примером mail, предположим, что когда мы отправляем почту, она может потерпеть неудачу, потому что у вас нет адреса email, или потому что у вас нет действительного адреса email, или она может потерпеть неудачу.. и т.д.

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

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

c#   java   exception    

399   11   21:06, 1st October, 2020


Трехзвенка на Qt?

Приветствую уважаемых хабровчан!


Разрабатываю новый проект на новом для меня Qt. Стоит задача реализовать трехзвенную архитектуру работы с БД. Связь через сокет. Среднее и верхнее звенья будут написаны на Qt. Идеальным было бы решение вроде WCF в .NET или на худой конец DCOM. Сам DCOM не подходит, т.к. нужна кроссплатформенность.


Ничего похожего в Qt к сожалению не нашел, а изобретать очередной лисапед не хочется.


Посоветуйте, в какую сторону копать?


Также, необходимо оставить возможность склеить все звенья в одном приложении, поэтому планирую воспользоваться «бутербродом» из QSqlRelationalTableModel и QAbstractProxyModel. Вот между ними и хотелось бы при необходимости передавать данные через сокет.

Qt   WCF    

268   2   21:06, 1st October, 2020


Symbian: нет интернета в большинстве приложений

Полностью отсутствует интернет в Java-приложениях и некоторых симбиановских приложениях.

Проблемные симбиан-приложения (например, Talkonaut, SIC FTP) просто молча висят при подключении и ничего не делают. Если не открыто ни одного подключения, то никуда и не пытается подключиться.

Для Java-приложений сначала запрашивается разрешение на доступ к сети (разрешить один раз / разрешить для сессии), а затем снова молчание.

Для нормально работающих приложений (Opera Mobile, Яндекс-карты) при подключении выводится вопрос о типе подключения (3g, wi-fi) и точке доступа. Такое подозрение, что плохие приложения просто не умеют его запрашивать. После выбора подключения приложение нормально работает в интернете.

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

Nokia X6, Symbian Series 60.

Symbian    

432   2   21:06, 1st October, 2020


MySQL vs PostgreSQL?

Кратко о проекте:
— выборка по большому количеству условий
— много инсертов
— высокие нагрузки
— без права на ошибку

MySQL или PostgreSQL?
Комплексное решение?
Другие варианты?
NoSQL?

MySQL   PostgreSQL    

330   15   21:06, 1st October, 2020


Каков самый быстрый способ массовой вставки большого количества данных в SQL сервер (C# клиент)

Я сталкиваюсь с некоторыми узкими местами производительности, когда мой клиент C# вставляет массовые данные в базу данных SQL Server 2005, и я ищу способы ускорить этот процесс.

Я уже использую SqlClient.SqlBulkCopy (который основан на TDS) для ускорения передачи данных по проводу, что очень помогло, но я все еще ищу больше.

У меня есть простой стол, который выглядит так:

 CREATE TABLE [BulkData](
 [ContainerId] [int] NOT NULL,
 [BinId] [smallint] NOT NULL,
 [Sequence] [smallint] NOT NULL,
 [ItemId] [int] NOT NULL,
 [Left] [smallint] NOT NULL,
 [Top] [smallint] NOT NULL,
 [Right] [smallint] NOT NULL,
 [Bottom] [smallint] NOT NULL,
 CONSTRAINT [PKBulkData] PRIMARY KEY CLUSTERED 
 (
  [ContainerIdId] ASC,
  [BinId] ASC,
  [Sequence] ASC
))

Я вставляю данные в блоки, которые в среднем составляют около 300 строк, где ContainerId и BinId являются постоянными в каждом блоке, а значение последовательности равно 0-n, и значения предварительно сортируются на основе первичного ключа.

Счетчик производительности %Disk time тратит много времени на 100%, поэтому ясно, что диск IO является главной проблемой, но скорость, которую я получаю, на несколько порядков ниже, чем у необработанной копии файла.

Поможет ли это кому-нибудь, если я:

  1. Отбросьте первичный ключ, пока я выполняю вставку, и воссоздайте его позже
  2. Сделайте вставки во временную таблицу с той же схемой и периодически переносите их в основную таблицу, чтобы сохранить размер таблицы, в которой происходят вставки, небольшим
  3. Что-нибудь еще? --

Основываясь на полученных ответах, позвольте мне немного прояснить ситуацию:

Портман: я использую кластеризованный индекс, потому что когда все данные будут импортированы, мне нужно будет обращаться к данным последовательно в этом порядке. Мне не особенно нужно, чтобы индекс был там при импорте данных. Есть ли какое-либо преимущество в том, чтобы иметь некластеризованный индекс PK при выполнении вставок, а не полностью отбрасывать ограничение для импорта?

Chopeen: данные генерируются удаленно на многих других машинах (мой сервер SQL в настоящее время может обрабатывать только около 10, но я хотел бы иметь возможность добавить еще). Нецелесообразно запускать весь процесс на локальном компьютере, потому что тогда ему придется обрабатывать в 50 раз больше входных данных, чтобы генерировать выходные данные.

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

c#   sql   sql-server   sql-server-2005    

556   8   21:06, 1st October, 2020