Донецкий техникум промышленной автоматики

Секрети ICQ - Оптимізація

Наступна стаття була написана моїм колегою по сайту. Написана спеціально для сайту, і, наскільки я знаю, вперше зачіпає цю тему. Я вважав недоцільним втратою часу переказувати її своїми словами, тому даю її в тому вигляді, в якому вона представлена ​​на сайті. Хай вибачить мені шановний Читач за жаргон в тексті.

Притча про асино схудненні.

Одного осіннього дощовий день я вмирав від нудьги. В інеті все відвідувані мною сайти і форуми були переглянуті і залишалося тільки вмикати аську, чого я і зробив. І тут чаша терпіння була переповнена. Ася вантажилася 20 секунд! Я подумав, що це занадто багато для програми, по якій просто потрібно поговорити. Поліз в інет, щоб знайти що-небудь про оптимізацію ICQ і видалення з неї непотрібних файлів. Взагалі кажучи проблема оптимізації системи і окремо взятих програм не нова. Але в основному розглядається ОС, а не окремі програми. Наприклад ось, на сайті Сергія Трошина дуже докладно описується оптимізація Windows 98, а ось тут остання його на цю тему (в основному про лінолеум, але майже все підходить і для 98). Але про всіма улюблену асю я не знайшов нічого. Абсолютно! Ніби й не потрібно там нічого оптимізувати. Довелося зайнятися цією проблемою самому. Про те, що я робив і до чого це призвело і оповідає даний розповідь, який я приведу в вигляді інструкції.

Заходимо в папку ICQ. Майже у всіх це C: \ Program Files \ ICQ \. І що ми там бачимо? А бачимо ми там дофіга папок і файлів, майже половина з яких абсолютно не потрібні і просто займають там місце. Розглянемо з нуля як і що треба робити. Спочатку потрібно завантажити і встановити дистрибутив . Версія аси, з якої я все це робив - 2000b Beta build # 3281. В кінці написання статті встановив build # 3286. Особливих відмінностей крім іконки помічено не було, так що все наступне підходить і до нього. Більш старі версії менш захищені, особливо ICQ99 і 98. І мають менше функцій. А 2001 ще настільки сира, що про неї говорити не має сенсу. Запускаємо нашу встановлену асю і бачимо дофіга банерів і непотрібних примочок. Для початку копіюємо папку Partner куди-небудь (для чого, буде розказано нижче). І запускаємо, який дозволить додавати користувачів без авторизації, прибере банери, кнопку SMS, а також включить показ IP. Корисно буде встановити собі деякі дллкі з архіву. Про них можна почитати в одному з останніх випусків. Можна також скопіювати в папку ICQ, який дозволить прописувати абсолютно будь-яке мило. Навіть "Vasya Pupkin RuleZ forever !!! :). Дуже не завадить додавання інформації з 4 файлів реєстру, які знаходяться в цьому. Про них можна прочитати. Тепер, коли ася з усіма наворотами встановлена, залишилося видалити зайве. Створюємо в затишному місці папку , назвемо її, наприклад, ICQ Test. При видаленні з папки аси будемо переміщати все сюди. Це типу бекапа. Повірте, навіть якщо ви точно впевнені, що якийсь файл або папка не потрібні, краще все-таки підстрахуватися. Йдемо в папку аси. Нижче я навів папки і файли, які видалив зі свого ICQ:

папки:
Help - Ви хоч раз його відкривали? Якщо ні - не травмуйте психіку. Можна сміливо відправляти в наш ICQ Test.
Licence - ліцензійну угоду. Його місце там же.
Aod - теж якась краса. Можна сміливо видаляти.
Bitmaps - Містить картинки кнопок чату. Якщо не використовуєте Chat, можна сміливо прибирати.
Bookmark - якісь закладки. Не знаю, що воно таке (може цікава штука :)). Але місце займає точно даремно. Тому видаляємо.
AteBrowser - Якщо ця папка ще у вас знаходиться, то видаліть обов'язково. Вона містить банери і буде садити мережевий трафік, завантажуючи нові, якщо її не видалити. Після видалення створіть в будь-якому файловому менеджері, наприклад в FAR е, файл AteBrowser без розширення. І помістіть його в папці ICQ. Поставте йому атрибут Read-Only. І тоді банери не будуть гойдатися і створювати за новою цю папку.
Sounds - Якщо ви не використовуєте звуки можна сміливо видаляти.
Received Files - Папка, в яку приходять прийняті файли. Навіть якщо ви використовуєте цю фічу (прийом файлів небезпечна річ), я не думаю, що ви будете складувати файло в цій папці. Можна сміливо видалити. А ось тут в настройках: Preferences \ Events \ File Transfer \ Default Incoming File Path \ можна замість цієї папки поставити будь-яку іншу, наприклад Мої Документи.
Pictures - сміливо видаляємо.
ICQ Phone Skin - Якщо не юзаєте ICQ Phone (така лажа, за яку до того ж потрібно платити), а я впевнений, що не юзаєте :), то видаляйте не замислюючись.
Partner - З цією папкою окрема історія. Вона містить інфу по кнопці ICQ SMS. Існує два варіанти, як з нею вчинити. Перший - просто видалити і поставити файл з таким же ім'ям (як і у випадку з AteBrowser). В цьому випадку інфа перестане закачуватимуться і ви отримаєте замість кнопки SMS порожнє місце з написом ICQ 2000b. В основному так і надходять. Але є більш цікавий варіант. Зробити там логотип зі своїм ніком. Буде і красивіше і цікавіше. Детальніше про лого далі по тексту.
ICQAcc - Якісь іконки. Я видалив. Нічого при цьому не порушилося.
Temp - Буває іноді. Містить файли, які використовуються при установці. Також видалятиметься.
В ідеалі у вас повинно залишитися тільки 6 папок: 2000b, DataFiles, Defaults, ICQFiles, Plugins, Uin. Якщо буде лого, ще й Partner.

Тепер візьмемося за файли:
Відразу можна видалити всі файли з розширенням * .bmp. Вони використовуються для чату (якщо звичайно використовуєте чат, видаляти не треба) і для панелі Channels, яка з'являється відразу після реєстрації зліва. Також можна видалити всі * .wav, якщо не використовуєте звук. Видалити файли з розширення дуже просто через пошук виндов. Після цього залишається позбутися зайвих дллок. Видалення деяких дллок спричинить до зникнення відповідних рядків і меню у асі, і вони не будуть муляти вам очі. Якщо ви використовуєте асю тільки для спілкування, як всі нормальні люди, можете видалити всі нижченаведені дллкі без шкоди для Асиного здоров'я. Якщо ж використовуєте якусь з функцій, то перегляньте і видаліть тільки непотрібні. Врахуйте, що чим більше дллок ви видалите, тим швидше буде працювати ваша ася і тим менше часу піде на її завантаження.

Дллкі, які видалив я:
icqateima32.dll, icqateimg32.dll, icqateres.dll - Ці три файли відповідають за появу банерів. Можна видалити відразу, не замислюючись.
ICQAL.dll, ICQALn.dll - Якщо не іспольузете ActiveList або не знаєте, що це таке, можна видаляти.
ICQChnl.ocx - Відповідає за менюшку Channels, яка з'являється з лівого боку при першому включенні аси. А також при кликання верхньої лівої кнопки під назвою Channels. Потрібна тільки наївним америкосам. Видаляємо.
ICQPhCl.dll - ICQPhone. Ніхто не юзает. Можна видалити. Причому після цього ічезнет дістала всіх кнопка Talk поруч з кнопкою Send у вікні відправки повідомлення.
ICQRndP.dll - Є така туфтовая фіча Chat With a Friend, яку ніхто ніколи не використовує. Видалить відповідне меню з Онлайн Статусу.
ICQPhSt.dll - ICQ Phone Status. Видалить відповідне меню з Онлайн Статусу.
При видаленні ICQRndP.dll і ICQPhSt.dll одночасно меню Online Status прийме такий вигляд:


dll одночасно меню Online Status прийме такий вигляд:

Далі я просто напишу інші дллкі. Що з ними робити, я думаю вам і так зрозуміло:
ICQChat.dll - ICQ Chat.
ICQGreet.dll - Greeting Card.
ICQExprs.dll - Email Express Message.
ICQExCt.dll - Send My four ICQ Addresses.
Відправляємо туди ж.
ICQHops.dll - ICQ Homepage.
ICQLDap.dll - LDAP Search.
ICQSdml.dll - ICQ Send mail.
ICQSMS.dll - ICQ SMS message.
ICQSMSST.dll - ICQ SMS Status.
ICQWP.dll - ICQ Web Pager.
Pop3.dll - Receiving mail.

В принципі можна видалити ще деякі файли і папки, але я точно не впевнений для чого вони і до чого приведе їх видалення, тому гарантувати наслідки не можу. Якщо ви знаєте непотрібні файли або папки, яких немає в цьому списку, і для чого вони служать, напишіть про них в або мені на.

Далі можна підправити деякі дллкі, щоб видалити непотрібні кнопки і рядки. Наприклад три верхні кнопки в асі: Channels, ICQMail і Interests.

Наприклад три верхні кнопки в асі: Channels, ICQMail і Interests

Займають купу вільного місця і гальмують систему. Можна їх прибрати через настройки, скажете ви. Але ж тоді автоматично підуть ще 2 маленькі кнопки: Online Mode і Contact List Groups. А вони потрібні. Можна закачати або вправити дллку. Насправді немає нічого складного. Берете будь-який редактор ресурсів. Який? Справа смаку: Restorator, Resource Hacker, eXeScope, а може щось інше. Закриваєте асю, відкриваєте в усі вказані прог файл ICQCore.dll і знаходите рядок Dialog \ 2168. Там вгорі ось такі цифри: 0, 0, 147, 16. Чи змінюєте на 0, 0, 0, 0. Більше нічого не чіпаєте. Залишається зберегти і включити асю. Якщо все зробили правильно, то трьох верхніх кнопок ви більше не побачите.

Якщо все зробили правильно, то трьох верхніх кнопок ви більше не побачите

Взагалі кажучи на цьому можна було б зупинитися зі зміною дллок Взагалі кажучи на цьому можна було б зупинитися зі зміною дллок. Але я вирішив піти далі. Я не люблю нижні кнопки, тому ось тут прибираю галочку: Preferences \ Active List \ Show bottom ICQ buttons. Так ася вантажиться швидше і має тільки дві нижні кнопки: ICQ і Online Status. Єдине, що зникає з того, що потрібно - це рядок Change User on this computer. Але до неї без проблем можна пройти так: Права кнопка миші на значку аси в треї \ My ICQ \ Change User on this computer. Тому зі зміною номера проблем не виникає. А також пропадає кнопка пошуку, яка є в меню ICQ \ Add / Invite Users. У звичайній асі в цій менюшке знаходиться досить багато рядків, які ускладнюють доступ до пошуку. Тому непотрібні я вирішив прибрати. А заодно вирішив модифікувати меню Help, щоб там було тільки меню About, т.к інші не використовуються. Для цього довелося лізти в дллкі і дечого там виправити. Після цього ася придбала ось такий вигляд:

Після цього ася придбала ось такий вигляд:

Якщо хочете мати подібну асю, можна скачати ось тут архів з готовими дллкамі, які просто потрібно скопіювати в папку аси. В архіві 4 файлу: ICQCore.dll, ICQSearc.dll, ICQWhite.dll і ICQusr.dll, ICQCore.dll вже пропачен першим патчем, прибрані 3 верхні кнопки, меню ICQ як на скріншотах, а також додана напис "Компанія Мірабіліс вітає ..." , про яку нижче. Можна також змінити меню ICQ вручну. Для цього потрібно внести зміни в кілька дллок. Я зробив такі зміни:

У файлі ICQCore.dll:
String \ 505 \ - видалив рядки з 8070 по 8076 включно, прибравши відповідні рядки з ICQ \ Add / Invite Users.

Далі змінив меню Help:
String \ 506 \ - замінив рядок 8081 на "ICQ Version", видалив рядки 8082, 8083, з 8085 по 8089 включно. Рядок 8090 замінив на "Version".
String \ 507 \ - видалив рядок 8096.
String \ 508 \ - видалив рядок 8113, замінив 8114 на "ICQ".
String \ 513 - видалив рядок 8199.
В результаті цих змін в ICQCore.dll, а також після видалення зайвих дллок, про які описано вище, в меню ICQ \ Add / Invite Users залишилося всього 3 рядки: Find User -> Add To List, ICQ White Pages, Add Non ICQ Contact . Я їх вирішив перейменувати, для чого трохи підправив 3 файлу:

I CQSearc.dll \ String \ 1 \ рядок 3 замінив на "Search",
ICQWhite.dll \ String \ 1 \ рядок 3 замінив на "White Pages",
ICQusr.dll \ String \ 64 \ рядок тисячі двадцять два замінив на "N on ICQ Contact".

У підсумку рядка в меню ICQ набули вигляду як на скріншотах вище. Все це не означає, що ви обов'язково повинні стрімголов робити абсолютно таке ж меню ICQ, як у мене. Тут все залежить від смаку, потреби і фантазії. Але цілком можливо, що кого-то влаштує саме таке меню.

Набагато більш радикальним, зручним і ефективним було б повна зміна папки ICQ. Але для цього потрібно володіти соотвестствующімі навичками в КОДІНГ і покопатися як слід в дллках. А також мати час на все це, якого у мене немає. Ідеальне меню ICQ на мою думку мало б таку структуру:

----- Exit -----
Shut Down Standby
----- Settings -----
To simple mode
View / Change my details
Preferences
Security and Privacy
----- My Computer -----
Registration to ICQ
Change User on this computer
Change the Active User
----- Find Users -----
White Pages Search

Де --- текст --- - роздільники.
Тому, хто першим зможе змінити меню ICQ як показано на схемі і пояснить детально як він це зробив, обіцяю хорошу шестізначку + піклування + поради щодо захисту + ще дещо.
І взагалі, якщо ця тема вас зацікавить і ви створите своє меню ICQ, надішліть мені свій варіант на асю, дуже цікаво подивитися, як цю проблему бачать інші. Є ще одна цікава фіча. Після реєстрації уіна при першому запуску ICQ компанія Мірабіліс відсилає вам перше повідомлення з поздоровленням. Але насправді не відсилає, а просто включає і його легко можна змінити ось тут:
ICQCore.dll \ String \ 447 \ рядок 7145.
Можна замінити цю строчку на текст, який більше до душі вам. У мене, наприклад, вийшло ось таке повідомлення: "Компанія Мірабіліс вітає Вас з реєстрацією чергового уіна. Вдалого Вам викрадення!"
Тепер з приводу іншої проблеми. Припустимо ви зарегиться асю. А у вас її сперли або повернули свою. А рядок в списку уінов залишилася. Видалити стандартними засобами її не можна, тому як пароль змінений, а ви його не знаєте. Перевстановлювати всю асю через таку фігні не хочеться. А тим часом цей трабл вирішується елементарно. Припустимо ваш УВП був 60000 :). Вирубуємо асю, відкриваємо редактор реєстру, йдемо ось сюди: HKEY_CURRENT_USER \ SOFTWARE \ Mirabilis \ ICQ \ Owners і видаляємо рядок 60000. Йдемо сюди: C: \ Program Files \ ICQ \ 2000b і видаляємо всі файли з ім'ям 60000. Потім йдемо сюди C: \ Program Files \ ICQ \ DataFiles, і видаляємо папку з назвою 60000. Залишається зайти в папку C: \ Program Files \ ICQ \ UIN і видалити файл 60000.uin. Усе. Немає ніяких слідів того, що цей УВП колись був у вашому асі.

Нарешті добралися до останньої стадії наших розборок з асей. Як зробити так, щоб замість кнопки SMS був наш нік? Взагалі-то про це вже писав ось тут Smerch. А також на сайті, де ви читаєте цю статтю вже викладена копія його опису. Але я все ж вирішив коротко написати, що ж потрібно робити. А робити потрібно небагато. Якщо з якоїсь причини у вас немає в папці аси папки під назвою Partner, то додайте. Всередині неї лежать кілька файлів: partner.xml, smsbig.bmp, smssmall.bmp і можливо smsbig1.bmp і smssmall1.bmp. Для нас важливі перші три. Для початку потрібно створити файл smsbig.bmp. Для цього береться Photoshop або будь-який інший професійний редактор графіки. Колір фону повинен бути такий: Red - 214, Green - 221, Blue - 228. Якщо ви поставите інший, то у кнопки будуть видні краю і виглядати буде неважливо. Далі малюєте там, що подобається. Зазвичай подобається нік :). Мені Strannik за кілька хвилин наваял 5 хороших логотипчик (спасибі :)). Потім зберігаєте своє творіння як 24 бітний bmp файл. Робите 2 файли, перейменовувати в smsbig.bmp і smssmall.bmp і вставляєте в папку Partner. Тепер залишилося відкрити partner.xml і дещо в ньому підправити. У мене вийшло ось так:
<Icqlogo type = "logo" alignment = "center">
<Big path = "smsbig1.bmp"> </ big>
<Icon path = "smssmall1.bmp"> </ icon>
<Link path = "http://soanet.h1.ru" atecaption = "soa"> </ link>
<Backcolor red = "214" green = "221" blue = "228"> </ backcolor>
</ Icqlogo>
alignment - як буде розташовано лого у Вас в ICQ: left, right, center.
big path - назва вашого файлу з логотипом.
link path - адреса, який буде використовуватися при натисканні на кнопку. backcolor - колір фону під кнопкою. Ставите його таким же, як і колір фону Потім всі файли і саму папку робите Read-Only.

В результаті ася стала спритніше приблизно в 2 рази, схудла приблизно на 7 мегабайт, менше глючить, швидше завантажується і має приємний фейс, в якому немає майже жодної зайвої функції.
Насправді тема оптимізації ICQ невичерпна, так як існує ще безліч файлів і папок, які можна видалити, кнопок і меню, які можна прибрати або реорганізувати і способів полегшити життя асі.


.
Copyright © 2001.


І що ми там бачимо?
Який?
Як зробити так, щоб замість кнопки SMS був наш нік?