Drag n Drop

Вообще, то, что я сделал с DragAndDrop в Windows - это варварство. А правильнее было бы так:

1. Открывается любимая среда программирования на С или что там.
2. Пишется простая утилита, вешающаяся на хук отслеживать Drag and Drop
3. Решается проблема с антивирусами (точнее тестируется, тк работа с хуками для антивируса скорее всего выглядит подозрительной по умолчанию).

Алгоритм утилиты, черновой, без оптимизации:
===
Если Drag and Drop, то {
- Определить объект захвата;
- Определить цель захвата;
- Проверить, не совпадает ли объект или цель с запретными? (тут массив отдельный нужен или вручную прописать переменные)
- Если совпадает, то выдать сообщение “Похоже, только что вы попытались перенести папку “Фото 1″ в папку “Не важно какая”. Вы уверены в своих действиях, вы отвечаете за базар?”. И кнопки - большая “Нет, у меня рука дрогнула, оставьте папку в покое” и маленькая “Да, я уверен и переношу это туда, за базар отвечу, но не перед тобой, а перед людьми, потрох электронный!”.
- Если не совпадает с запретными - очистить память, обнулить используемые переменные и массивы, слушать дальше.
}
Иначе {
Сиди тихо и жри память не больше… мммм.. ну килобайта.
}
===

Я бы и сам это написал, да только С в последний раз брал лет 14 назад, а два языка учить сейчас не потяну.


One Response to “Drag n Drop”

  1. urbanian Says:

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

Leave a Reply




#hello#