суббота, 29 июня 2013 г.

Настраиваем DynDNS клиент на D-Link DIR-300/A/C1

Небольшая заметка о том, как настроить DynDNS клиент на роутере D-Link DIR-300/A/C1, а также, как создать Free DynDNS аккаунт. Многие пользователи, обладающие роутером этой модели (обратите внимание, речь идет именно о ревизии A/C1, это совсем не то же самое, что популярная линейка DIR-300/NRU) жалуются на то, что роутер работает нестабильно, даже при соединении по DHCP, постоянно зависает, теряет пакеты и т.п., не говоря уже о работе встроенного в прошивку DynDNS клиента и других фич. Все это отчасти имеет под собой определенную подоплеку, т.к. в варианте "из коробки" данная модель продается с достаточно сырой прошивкой 1.0.0 (я бы даже сказал что эта версия является неработоспобной, т.е. если вы купили данный девайс и в нем установлена именно эта версия прошивки - даже не пытайтесь что-либо настраивать, т.к. "не взлетит"), чтобы заставить устройство нормально работать необходимо обновиться на 1.0.12 и выше. Рекомендации по обновлению прошивки можно прочитать в этом посте. Обратите внимание на то, что на некоторых экземплярах DIR-300/A/C1 обновить прошивку через web-интерфейс невозможно, ввиду того, в них по-умолчанию прошит старый загрузчик, не позволяющий обновить прошивку до более высокой версии. Для обновления прошивки на DIR-300/A/C1 необходимо, воспользоваться утилитой DCC с FTP D-Link'а, либо прибегнуть к второму варианту пути решения данной проблемы (оба решения описаны по ссылке выше).

Предположим, что прошивку мы успешно обновили, и теперь у нас версия 1.0.12. Теперь пришло время зарегистрировать аккаунт в DynDNS. Не знаю, как обстоят дела на данный момент, но когда я месяц назад пытался это сделать - Free аккаунт с одним доступным хостом мне почему-то зарегистрировать так и не удалось. Предлагалось купить подписку, сделать еще что-то, но результата не было. Поэтому здесь мы пойдем другим путем.


  • Заходим на сервис D-Link Dynamic DNS и регистрируем аккаунт и хост.
  • У меня получилось что-то вроде этого: 
    Как видно, аккаунт у меня называется compkaluga, а имя хоста: compkaluga.dlinkddns.com
  • Теперь логично было бы его прописать в настройках роутера, т.е. в Advanced -> DDNS - DDNS client editing. Однако именно в таком варианте DDNS клиент работать напрочь отказывался ;)
  • Читаем How-To на сайте  D-Link Dynamic DNS, конкретно фразу "You first need to create an account. After entering your user information, you will be sent an e-mail to verify your e-mail address and confirm your account. You can then log in. This account, with the username and password you enter, is also good at www.dyndns.com." Это означает, что с аккаунты на DLink DDNS и DynDNS.com это фактически одно и то же, и при создании нашего аккаунта на DLink DDNS автоматически создался аккаунт с теми же учетными данными и на DynDNS.
  • Проверим это: 
  • Теперь самое время прописать настройки этого аккаунта в роутер в разделе   Advanced -> DDNS:
На этом настройка DynDNS в DIR-300/A/C1 завершена.

пятница, 21 июня 2013 г.

1С 7.7: Организация автообмена через FTP

В данной статье мы рассмотрим организацию автообмена 1С:Предприятие 7.7 с использованием УРБД (управление распределенными базами данных) через FTP сервер. Для конкретизации задачи, предположим, что у нас есть центральный офис и несколько удаленных филиалов (торговых точек), которые будут обмениваться с центральным офисом информацией посредством автообмена и распределенных баз данных. Подробно останавливаться на конфигурировании распределенной ИБ мы не будем, предположив, что вы уже проделывали это не раз. Наша задача - свести "пользовательскую составляющую" автообмена к минимуму, т.е. - добиться того чтобы для проведения автообмена пользователь запускал некий один ярлык, после запуска которого информация из центральной базы, попадала бы в перефирийную и наооборот. Для организации всего вышесказанного нам потребуются FTP-сервер, а также доступ в интернет на всех торговых точках. Предположим конфигурация распределенной базы данных у нас следующая (скриншот с центральной ИБ):


При этом в настройках параметров автообмена режим установлена в автоматический, каталог выгрузки - C:\DB\CP, каталог загрузки - C:\DB\PC (где C:\DB - это собственно путь к центральной базе), а имена файлов выгрузки и загрузки для указанных перефирийных ИБ имеют следующие значения:

Переферийная ИБ Каталог выгрузки Каталог загрузки Имя файла выгрузки Имя файла загрузки
МГ1 (Ростов) C:\DB\CP C:\DB\PC MG1C.zip MG1D.zip
МГ2 (Новосибирск) C:\DB\CP C:\DB\PC MG2C.zip MG2D.zip
МГ3 (Калуга) C:\DB\CP C:\DB\PC MG3C.zip MG3D.zip

  • Создадим в папке с базой подпапку AutoExchange, т.е. создадим C:\DB\AutoExchange.
  • Скачаем с NcFTP Client Home Page утилиты ncftpget.exe и ncftpput.exe и положим их в папку AutoExchange. Это консольная версия FTP клиента, в принципе, можно было бы воспользоваться штатным ftp.exe встроенным в ОС, но ввиду того, что с ним бывают определенные проблемы (иногда, когда нет возможности соединиться с FTP серверов в активном режиме, отправка / получение данных не происходит, также отмечен ряд проблем при установленном антивирусе Касперского и т.п.), вообщем, для обеспечения надежного и бесперебойного обмена данными проще воспользоваться утилитами сторонних разработчиков.
  • Создадим в папке AutoExchange файл правил автообмена, назавав его _Exchange.prm :
    [General]
    Quit = 1
    AutoExchange = 1
    Output=Exchange.log 
    [AutoExchange]
    SharedMode = Y
    ReadFrom=*
    WriteTo=*
    
  • Затем в той же самой папке создадим файл пакетного сценария _runobmen.bat или _runobmen.сmd (для корректного отображения кириллицы, плюс, если кириллические символы у вас используются в путях и т.п., файл необходимо создавать в кодировке CP866 , сделать это можно в том же блокноте, выбрав в качестве шрифта - Terminal), содержимое файла следующее:
    @echo off
    rem (c) Decker, 2011-2013, decker@compkaluga.ru
    
    set CP_Folder=%~dp0..\CP
    set PC_Folder=%~dp0..\PC
    rem set DebugMode=-d stdout
    set DebugMode= 
    
    title АвтоОбмен
    color 0b
    setlocal enableextensions
    
    :fromftp
    echo Пробуем загрузить изменения.
    ncftpget.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru %PC_Folder% /MG1D.zip
    ncftpget.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru %PC_Folder% /MG2D.zip
    ncftpget.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru %PC_Folder% /MG3D.zip
    echo ErrorLevel: %ErrorLevel%
    
    echo Работает 1С...АвтоОбмен...
    start "АвтоОбмен" /wait /min "C:\Program Files\1Cv77\BIN\1cv7.exe" config /d"%~dp0..\" /N"obmen" /P"obmen" /@"%~dp0_Exchange.prm"
    
    :toftp
    echo Пробуем выгрузить изменения.
    ncftpput.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru . %CP_Folder%\MG1C.zip
    ncftpput.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru . %CP_Folder%\MG2C.zip
    ncftpput.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru . %CP_Folder%\MG3C.zip
    echo ErrorLevel: %ErrorLevel%
    exit
    
  • В данном примере с FTP сервера ftp.company.ru (логин - ftp_user, пароль - ftp_pass) с помощью ncftpget.exe последовательно скачиваются файлы обмена MG1D.zip, MG2D.zip, MG3D.zip, полученные от перефирийных баз и складываются в папку %PC_Folder%, т.е. в C:\DB\PC (каталог загрузки). Затем запускается платформа 1С:Предприятие с именем пользователя obmen и паролем obmen и происходит автообмен. В результате которого в папке %CP_Folder% оказываются подготовленные файлы выгрузки для перефирийных баз, которые затем, с помощью ncftpput.exe последовательно заливаются на ftp сервер. На этом конфигурирование обмена на стороне центральной базы закончено, пользователям достаточно вывести на рабочий стол ярлык к созданному _runobmen.bat или _runobmen.сmd , убедившись при этом, что в свойствах ярлыка рабочей папкой для данного сценария является именно та папка, в которой он находится.
  • Настройка автообмена в каждой из перефирийных баз ничем не отличается, за исключением файла _runobmen.bat или _runobmen.сmd . Рассмотрим этот файл на примере первой перефирийной базы:
    @echo off
    rem (c) Decker, 2011-2013, decker@compkaluga.ru
    
    set CP_Folder=%~dp0..\CP
    set PC_Folder=%~dp0..\PC
    rem set DebugMode=-d stdout
    set DebugMode= 
    
    title АвтоОбмен
    color 0b
    setlocal enableextensions
    
    :fromftp
    echo Пробуем загрузить изменения.
    ncftpget.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru %CP_Folder% /MG1C.zip
    echo ErrorLevel: %ErrorLevel%
    
    echo Работает 1С...АвтоОбмен...
    start "АвтоОбмен" /wait /min "C:\Program Files\1Cv77\BIN\1cv7.exe" config /d"%~dp0..\" /N"obmen" /P"obmen" /@"%~dp0_Exchange.prm"
    
    :toftp
    echo Пробуем выгрузить изменения.
    ncftpput.exe -u ftp_user -p ftp_pass -F %DebugMode% ftp.company.ru . %PC_Folder%\MG1D.zip
    echo ErrorLevel: %ErrorLevel%
    exit
    
  • Здесь, первым действием мы забираем файл выгрузки центральной базы MG1C.zip с сервера и помещаем его в папку CP, затем, запускаем автообмен, и помещаем файл выгрузки из перефирийной базы MG1D.zip из папки PC обратно на сервер. Аналогичный сценарий используется и в двух других перефирийных базах, с разницей лишь в именах файлов.
Ссылки на материалы по теме:

четверг, 20 июня 2013 г.

1С 7.7: Ошибка SQL State: 23000 Native: 1505

Возникла тут у клиентов вообщем-то простая задача - сконвертировать базу 1С 7.7 (Торговля и Склад) с DBF на SQL вариант. Провели тестирование и исправление базы, никаких ошибок вообщем-то не было выявлено. Выгрузили данные, но при попытке загрузки их в SQL базу получили сообщение об ошибке:


SQL State: 23000 
Native: 1505 
Message: [Microsoft][ODBC SQL Server Driver][SQL Server]CREATE UNIQUE INDEX terminated because a duplicate key was found for index ID 2. Most significant primary key is ' BF3 '. 

SQL State: 01000 
Native: 3621 
Message: [Microsoft][ODBC SQL Server Driver][SQL Server]The statement has ben terminated.

Быстрое гугление на тему привело к вот этой статье и пониманию того, что в данном случае мы знали в какой таблице был замечен неуникальный индекс, а в нашем случае - нет. Собственно дальнейшие изыскания привели к следующему. Если не закрывать и не сворачивать окно 1С во время загрузки в SQL базу, то при появлении MessageBox'а об ошибке можно увидеть какую информацию он пытался загрузить последней. В нашем случае это был справочник Цены, вернее создание индексов справочника цены. Смотрим в DBF варианте файл 1Cv7.dd и видим, что таблица справочника цен - это SC319.DBF. Открываем ее в DBF Viewer 2000 и видим что поле ID действительно неуникально, присутствуют две записи с ID = BF3. Далее мы воспользовались инструментом Tools -> Delete duplicates ... оставив в качестве фильтра только ID, и удалили дублирующиеся данные:


После чего сделали Edit -> Pack (для физического удаления помеченных на удаление записей), и на всякий случай удалили файл индексов SC319.CDX. После чего по новой выгрузили данные из DBF базы и попытались по новой загрузить их в базу MSSQL. Этап создания индексов таблицы Цены прошел успешно. Ошибка SQL State: 23000 была побеждена.


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

1. запустив профайлер SQL загружаем базу. с логе профайлера будет инфа на какой ошибке все завалилось.
2. отредактировал битые dbf ки с помощью плугина wlx_xbaseview к тотал командеру (удалил дублирующие записи)
3. дублирующие записи нашел: выгрузил dbf в excel и сделал сводную таблицу по ключевым полям. где кол-во было > 1 -- это дубли

четверг, 23 мая 2013 г.

Huawei Online Calculator. Разблокировка модемов Huawei

Приглашаем всех принять участие в тестировании нового онлайн-калькулятора кодов разблокировки (NCK) для модемов Huawei. Поддерживаются модемы со старым и новым алгоритмом NCK.

Разблокировка модемов Huawei - онлайн-сервис позволяющий получить NCK-код (код разблокировки) по старому и новому алгоритму. Для разблокировки модема просто вставьте sim-карту другого оператора, появится окно с полем ввода. Введите код в этом окне. Если запрос кода не появился, вы можете ввести unlock код специальной программой (либо AT-командами в ручном режиме, посредством терминальных программ, например, HyperTerminal, PuTTy, Huawei Modem Terminal и др.)

AT^CARDLOCK="nck code" - снятие блокировки.
AT^CARDLOCK? - Проверка состояния блокировки и оставшихся попыток ввода кода разблокировки. В ответ модем выдаст CARDLOCK: A,B,0, где A - состояние блокировки, B - количество оставшихся попыток разблокировки. A = 2 означает, что симлока нет, A = 1 если модем залочен.

Поддерживаемые модели модемов


  • OLD Algo Unlock Code - E150, E1550, E155, E156, E156G, E160, E160G, E161, E166, E169, E169G, E170, E172, E176, E180, E182E, E196, E226, E270, E271, E272, E510, E612, E618, E620, E630, E630+, E660, E660A, E800, E870, E880, EG162, EG162G, EG602, EG602G, Vodafone K2540, Vodafone K3515, Vodafone K3520, Vodafone K3565, Vodafone K3715 и др. Это модемы со старым алгоритмом.
  • NEW Algo Unlock Code - E137, E171, E173Cs-1, E1732, E173, E1815, E272, E303, E303 HiLink, 320s(E3121), E3131(420d), E3276, E352, E353, E355, E357, E362, E363, E367, E368, E369, E372, E392, E397, E398, E586, E5776 (821FT), E5776s-22, E589, E589u-12 и др. Альтернативой данному сервису является запрос кода разблокировки в этой теме.
  • Flash Code - Флэш код рассчитывается как для старого алгоритма, так и для нового. Флеш код запрашивается при прошивке модема.
Ссылки

  1. Huawei Online Calculator. Разблокировка модемов Huawei - официальная тема поддержки проекта на нашем форуме.
  2. FAQ по беспроводным модемам Huawei E150/E156/E160/E169/E171/E173/E1750/E1820/E220/E367 - FAQ форума 4pda.ru
  3. Тема на форуме 4pda.ru для бесплатного получения кодов разблокировки. "Оффлайн" аналог этого сервиса.
  4. Huawei 3G модем как разблокировать бесплатно? - профильная тема на форуме ru-board.com
  5. Huawei Calculator by Decker - Онлайн калькулятор кодов разблокировки Huawei. Поддерживается старый и новый алгоритм. С 12:00 по 14:00 (MSK) коды разблокировки можно получить абсолютно бесплатно!

четверг, 16 мая 2013 г.

OpenServer - платформа для Web-разработчиков

Open Server — это портативная программная платформа, созданная специально для веб-разработчиков с учётом их рекомендаций и пожеланий.

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

Хотя изначально программные продукты, входящие в состав комплекса, не разрабатывались специально для работы друг с другом, такая связка стала весьма популярной среди пользователей Windows, в первую очередь из-за того, что они получали бесплатный комплекс программ с надежностью на уровне Linux серверов.

Удобный и современный программный комплекс Open Server станет вашим лучшим другом и надёжным помощником в разработке веб-проектов.

Основные компоненты:
  • Управляющая программа Open Server 4.8.5;
  • Apache 2.2.24;
  • Apache 2.4.4;
  • Nginx 1.2.8;
  • MySQL 5.1.69;
  • MySQL 5.5.31;
  • MySQL 5.6.11;
  • MariaDB 5.5.30;
  • MongoDB 2.4.1;
  • PostgreSQL 9.2.4;
  • PHP 5.2.17 (Zend Optimizer 3.3.3, IonCube 4.0.7, Memcache 2.2.4);
  • PHP 5.3.24 (Xdebug 2.2.2, IonCube 4.2.2, Memcache 2.2.7, Mongo 1.3.5, Imagick);
  • PHP 5.4.14 (Xdebug 2.2.2, IonCube 4.2.2, Memcache 2.2.7, Mongo 1.3.5, Imagick);
  • FTP FileZilla 0.9.41;
  • ImageMagick 6.8.0-7 Q16;
  • Fake Sendmail 32;
  • NNCron Lite 1.17;
  • Memcached 1.4.5;
  • Adminer 3.6.3;
  • HeidiSQL 7.0;
  • Webgrind 1.0;
  • RockMongo 1.1.5;
  • PHPMyAdmin 3.5.8;
  • PHPPgAdmin 5.1;
  • PHPMemcachedAdmin 1.2.2;
Все компоненты сборки представлены в 32-битной версии. Поддерживаемые версии Windows (32-бит и 64-бит): Windows 8 / Windows 7 / Server 2008 / Vista / Windows XP SP3. Минимальные системные требования для работы программного комплекса: 200 Мб RAM и 1 Гб на HDD.

Страница проекта: http://open-server.ru/
Ссылки для скачивания: http://open-server.ru/download.html

Восстановление сохраненных паролей TheBat

В этом посте мы расскажем об одной полезной программе, позволяющей пользователю восстановить сохраненные пароли почтового клиента TheBat. Зачастую, нередка ситуация когда пользователь создает какой-либо почтовый ящик, настраивает почтовый клиент на него, сохраняя настройки в клиенте. А потом через какое-то время сталкивается с вопросом, а какой же собственно был пароль к этому аккаунту? Если в качестве почтового клиента у вас используется The Bat!, то для восстановления сохраненных в клиенте паролей существует отличная утилита The Bat! Password Recovery. Программа автоматически определяет расположение профиля TheBat, настройки текущего пользователя и отображает сохраненные пароли к аккаунтам в отрытом виде. На сайте разработчика указано, что утилита поддерживает The Bat! от версии 2.12 и выше, в нашем случае утилита была проверена на одной из последних версий - 5.0.12, все сохраненные пароли были успешно отображены.

среда, 24 апреля 2013 г.

Ростелеком на полчаса заблокировал "Яндекс"

Пользователи "Ростелекома" оказались лишены доступа к "Яндексу" - на заглушке оператора сообщалось, что ресурс занесен в реестр запрещенной информации.

Проблема была устранена в течение получаса, сообщили Roem.ru в Яндексе. "Ростелеком" у себя в твиттере пояснил, что "Яндекс" был заблокирован случайно - провайдер по решению суда блокировал IP-адрес, совпадавший с IP-адресом одного из сервисов "Яндекса".


Пресс-служба "Яндекса" подтвердила в официальном заявлении, что речь идет о "недоразумении":

Сегодня Ростелеком заблокировал Яндекс для своих абонентов — примерно с 14:04 до 14:27 по Москве. Наших пользователей встречала страница-заглушка об ограничении доступа к сайту.

Ростелеком в качестве причины блокировки ссылается на «предписание суда ограничить доступ к сайту, IP которого совпадал с некоторыми ресурсами» (https://twitter.com/Rostelecom_News/statuses/326653339339214848). Никаких уведомлений по этому поводу в Яндекс не поступало.

Мы считаем случившееся недоразумением. Тот факт, что доступ к Яндексу был восстановлен, лишь подтверждает это. Официальный запрос в Ростелеком уже отправлен, мы ждём подробностей.

© http://roem.ru/2013/04/23/yandexrtblocked70301/

p.s. Ранее мы писали о блокировке блогов Google со стороны Ростелеком - Домолинк блокирует ресурсы Google, а также освещали эту тему на нашем форуме в этом топике. Однако теперь ... вообщем просто нет слов.