Ну и чем я могу заниматься почти в 4 часа ночи, и при том не спать?
Мучила интернет, батники и ноут на предмет автозагрузки и вообще...
Итак, задача:
Дано:
Скайп (все знают, что это за зверь?), который, как известно, не даёт запустить себя дважды простым щелчком по Skype.exe, тем более под разными логинами-пассвордами.
Требуется:
1) Запустить по крайней мере две копии скайпа с разными логинами, чтоб они работали одновременно (из-под одного юзера в винде, естественно).
2) И чтоб авторизировался сразу, без запроса пароля.
3) Запихнуть их в автозагрузку.
Решение:
Для второй (тртьей и т.д.) копии достаточно создать ярлык (один на все 100500 копий), в котором прописать:
"C:\Program Files\Skype\Phone\Skype.exe" /secondary
Можно даже в свойствах ярлыка задать ему сочетание клавиш и запускать с клавиатуры.
Угу, только вторая копия будет каждый раз просить пароль.
Поела, почитала дальше Пушкина...
Потом решила, что такой вариант с ярлыками мне не нравится, а шаловливые пальчики, тыкающие клавиатуру, требуют продолжения экспериментов.
Поэтому в папке C:\Program Files\Skype\Phone\ создаю папки Data1, Data2, ... Пока не надоело. А точнее, столько раз, сколько раз дублирую скайп.
Теперь по очереди для каждого логина:
1) захожу в скайп, ставлю галочку на "запоминать", или как-то так. В общем, верхняя галочка под полем для ввода пароля.
2)выхожу из скайпа
3) копирую папку, которая называется как логин в скайпе, из "C:\Documents and Settings\User\Application Data\Skype" в очередную папку DataX. Если не копируется, пинаю себя и выключаю скайп!
Теперь создаю для каждой копии ярлык такого вида (Data для каждого своя):
"C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data1" /nosplash /minimized
Последние два ключа можно не писать, они чтоб не было заставки и чтоб сразу в трей сворачивался.
Но ярлыки надо запускать по очереди! Ах, какая бяка-то!
Так что теперь стираю ярлыки нафиг и пишу bat-файл.
start "" /b "C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data1" /nosplash /minimized
start "" /b "C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data2" /nosplash /minimized
и так далее...
Запускаю... И блин, запустилась только одна копия. А всё потому, что совсем подряд - и... Ну не знаю, как объяснить, представьте, что вас сразу двое с разных сторон окликнут по имени.
Потому дописываю:
start "" /b "C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data1" /nosplash /minimized
PING -n 4 127.0.0.1 > nul
start "" /b "C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data2" /nosplash /minimized
Новая строчка - всего лишь такая извращённая задержка по времени...
Дальше, казалось бы, всё просто: запихнуть это в Автозапуск, и всё. Ан нет, опять запускается лишь первая копия.
Итог: runSkype.bat в Автозапуске такой:
PING -n 40 127.0.0.1 > nul
start "" /b "C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data1" /nosplash /minimized
PING -n 7 127.0.0.1 > nul
start "" /b "C:\Program Files\Skype\Phone\Skype.exe" /secondary /datapath:"C:\Program Files\Skype\Phone\Data2" /nosplash /minimized
Комп ждёт, пока не загрузится прочие программы, тупо в это время пингуя самого себя (ну дабы не скучно ему было, а sleep.exe как-то не это...), потом 1-ую копию грузит, потом ещё ждёт и 2-ую.
Коряво, но работает.
Заодно вот такую штучку к каждому приделала.
Это чтоб копии не путать, они подписываются не словом Skype, а каждая своим логином.
Открытыми остались два вопроса:
1) Как скрыть окно cmd, которое почти минуту висит при запуске винды
2) А на кой мне вообще сдались несколько копий скайпа?