Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 11634
Последний выпуск: 19.06.2015

Изврати свой Excel - или как оттянуться, не сходя с рабочего места (Zepadlo v 1.0-beta).

Багиров Заур aka BiZet
bizetik@lycos.com
2002 Baku Azerbaijan

Немного о грустном

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

Если согласны, то тогда поехали.

Ключ на старт...

Для сегодняшних опытов нам понадобятся любое офисное приложение и чайная ложечка мозгов

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

Итак, открываем Excel и, прищурив левый глаз, осмотримся чего бы нам там изменить


Рисунок 1 - Девственный Эксель готовый к употреблению :)

Насмотрелись? Едем дальше ....На скриншоте римскими цифрами я пометил все то, что мы сегодня будем менять ...

Номер I - эта та самая наинаглейшая надпись в левом верхнем углу экрана Micro$oft Excel , ну ничего щас я тебя ...Молниеносно жмем ALT+F11 , создаем модуль, нарекаем его любым угодным вам именем),дал своему имя Zepadlo) .Далее переходим в окно кода и думаем чего бы тут такого написать. Как вы наверное догадались в нашем с вами положением за надпись отвечает (или ответит :-) свойство Caption глобального объекта Application .Все просто омерзительно просто (извиняюсь за каламбур)...

Итак, пишем:

Private Sub ChangeThatFuckinCaption ()
  'Замена дефолтого капшина
  Application.Caption = "Если вы думаете что это Эксель, то вы сильно ошибаетесь :-)"
  ActiveWindow.Caption = "Hacked by (Your Name)"
End Sub

После этого жмите F5 и полюбуйтесь, что вы натворили:


Рисунок 2

Немного теории ...

Private Sub - почему именно Private, да потому чтоб его не видно было при нажатии клавиш ALT+F8 (кто не знает, тот отдыхает и получает удовольствие :-) :

В следующих строках я обращаюсь к объектам Application и ActiveWindow и меняю их свойства Caption на нужное мне, а не то, что установило Micro$oft (так ему и надо-нечего везде себя пихать ).Единственное на что хочу обратить ваше внимание, что ActiveWindow.Caption изменит только активное окно (что в большинстве случаев достаточно) -на то это и бета версия нашей с вами заподлянки и вам будет над, чем подумать на сон грядущий.

Возвращается все на свои места также просто:

  Application.Caption = Empty
  ActiveWindow.Caption = ActiveWorkbook.Name

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

Private Sub NoMoreCommandBarHere()
  'отключаем всё меню
  'объявим переменную
  Dim CmdBar As CommandBar
    For Each CmdBar In CommandBars
      If CmdBar.Enabled = True Then
      CmdBar.Enabled = False
      End If
    Next
End Sub

В первой строчке я объявил переменную CmdBar как объект Command Bar . Далее я использую цикл For Each :.. In :: (что переводиться как - для каждого ...... в .......) , в котором обращаюсь к каждому командбару и проверяю если он включен (если он не включен, то значит им не пользуются и трогать его также нет смысла ), тогда вырубим его . После запуска (жмите F5) у вас должно получиться следующее:


Рисунок 3 - Просто, но со вкусом (толи еще будет)

Вернуть все можно заменив в цикле следующие строчки

If CmdBar.Enabled = True Then
  CmdBar.Enabled = False
End If

На

If CmdBar.Enabled = False Then
  CmdBar.Enabled = True
End If

Как видно на скриншоте - исчезло все меню (включая и то, что вылетало при райтклике). Но это еще не самое жуткое зрелище .Переходим к задачке № III .Как говориться -Раз пошла такая пьянка режь последний огурец 8-) .Там же в окне кода нашего модуля выводим следующее ...

Private Sub hide_all()
'операция по вырезанию грыжи у Экселя продолжается
With ActiveWindow
'убрать заголовки
.DisplayHeadings = False
'убрать аутлайны(обычно их не бывает), но на всякий случай их тоже надо убрать
.DisplayOutline = False
'эти зерос тоже не частые гости и тем не менее не место им на странице
.DisplayZeros = False
'горизонтальные полосы прокрутки
.DisplayHorizontalScrollBar = False
'вертикальные полосы прокрутки
.DisplayVerticalScrollBar = False
'закладки рабочих листов
.DisplayWorkbookTabs = False
'и в конце концов снимите сетку с экрана
.DisplayGridlines = False
End With
'мы с вами не формулы писать пришли
Application.DisplayFormulaBar = False
'а этот пункт вообще не подлежит обсуждению
Application.ShowWindowsInTaskbar = False
End Sub

Все готово шеф, делайте пробный старт. Да да опять жмите F5 сравните то, что у вас получилось с тем, что у меня на следующем скриншоте (рис 4.) . Сразу оговорюсь, так как я извращался с пустым файлом, то у меня эКсель превратился в обыкновенный блокнот (ExPad) .У людей, которые будут иметь несчастье ощутить все прелести данного прикола может съехать крыша, так что советую находиться в недосягаемости от испытуемого компьютера.


Рисунок 4 - В деревне больше никто не живет 8-)

И даже не спрашивайте, как все вернуть на свои места, потому как я вам не скажу что все False , которые вы видите в листинге номер три надо заменить на True (и больше не спрашивайте)........

Заключительная часть Марлезонского балета ака шаг номер IV . Зачем, спрашивается я не тронул статус бар (там до сих пор Ready написано). Щас я там такое напишу . А как? спросите вы ...А вот так!!!

Private Sub StatusBarUnderFire()
  'вот как раз сейчас и напишу
  Application.StatusBar = "Вот получите Censored ваш Censored Censored...Censored"
End Sub

Опять Application , но уже не капшион, а Application.StatusBar ="Ваш текст". Как видите это тоже не очень вас должно напрячь . Стереть все эти письмена вам поможет следующая строчка

Application.StatusBar = False

Рисунок 5 - рис 5. Напишем на статус баре, все что мы о нем думаем ....

Post FUCKtum

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

Private Sub Auto_Open()
  'загрузим по полной на старте
  ChangeThatFuckinCaption
  NoMoreCommandBarHere
  hide_all
  StatusBarUnderFire
End Sub

Private Sub Auto_Close()
  'сбросить при выходе (исключительно для вас, но не для жертвы )
  ReturnDefaultCaptions
  ReturnCommand
  unhide_all
  ClearTheStatus
End Sub

При запуске файла стартует ваше западло, соответственно при закрытии файла все возвращается на свои места. На этом разрешите закончить. Надеюсь еще встретимся .Саголун.

Исходники данной статьи можете найти в модуле zepadlo.bas.

Кстати, чтобы вставить модуль в книгу воспользуйтесь командой File ->Import File в VBA Editor-е

Теперь вроде все....

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 

Комментарии

1.
47K
17 марта 2009 года
Alexey-GAV
5 / / 17.03.2009
Мне нравитсяМне не нравится
29 апреля 2009, 19:14:17
ОЧЕНЬ УДОБНО, КОГДА ПИШЕШЬ ПРОГРАММУ ДЛЯ ГРУППЫ ПОЛЬЗОВАТЕЛЕЙ И НЕ ЖЕЛАЕШЬ, ЧТО Б БИЛЛИ ФИГУРИРОВАЛ, НО КАК БЫ ЕЩЁ И ЭТУ ЗЕЛЁНУЮ "Х" ПОМЕНЯТЬ НА СВОЙ ЗНАЧОК.
2.
19K
09 июля 2006 года
Big_Repa
4 / / 09.07.2006
+0 / -1
Мне нравитсяМне не нравится
11 июля 2006, 23:04:50
А слабо сделать так что бы sheets.codename был всегда идентичен name листа сколько бы его не переименовывали!!
3.
Аноним
Мне нравитсяМне не нравится
19 апреля 2006, 19:55:43
класс!!!
По крайней мере понятно для новичка на конкретном примере как начать писать
программу.
4.
Аноним
Мне нравитсяМне не нравится
1 февраля 2006, 01:35:46
прикольно. будет чем развлечься на работе
5.
Аноним
Мне нравитсяМне не нравится
12 октября 2005, 23:19:14
Where importent inf.
You only need to acivate these functions on mouse click.
And may be lern how to change msgbox's: from "Cant open file " to somethink like "Find it your self... I'm going to sleep." And you will be the master of HAOS in windos.
P.S.
If you will learn it send it to me please: TheVamp@mail.ru
6.
Аноним
Мне нравитсяМне не нравится
5 сентября 2005, 16:26:05
Нормально, но не хватает пару команд по отсылу на мой ящик пароля от расчетного счета жертвы, а также распространения себя самого. А, вспомнил, можно еще по таймеру включать/выключать эти макросы, чтоб жертва не ушла домой без стресса
7.
Аноним
Мне нравитсяМне не нравится
14 апреля 2005, 10:55:30
Детский лепет... И это для программистов?
8.
Аноним
Мне нравитсяМне не нравится
9 декабря 2004, 09:18:45
Полезная информация! И полезет она 1-ого апреля по Exel-ю:) Мне понравилось!
9.
Аноним
Мне нравитсяМне не нравится
25 ноября 2004, 17:25:32
Хорошая первоапрелтьская шутка!
Будем шутить и ждать подходящего времени.
10.
Аноним
Мне нравитсяМне не нравится
25 октября 2004, 13:32:09
Изврати свой Эксель
Отлично!
Чтобы ещё хотелось - это какой-нибудь
чудовищный вид Помощника!
Как его изменить?
11.
Аноним
Мне нравитсяМне не нравится
8 октября 2004, 07:36:59
Красиво. Просто. "Полезные штучки в одной кучке". К примеру, пользователи, почему-то никак не хотят читать предупреждения в StatusBar, а в заголовке окна читают, охреневают, начинают уважать и, самое главное, благоговейно исполнять написанное !!!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог