Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Windows 2000/XP (http://forum.oszone.net/forumdisplay.php?f=6)
-   -   [решено] Вы действительно хотите изменить расширение? (http://forum.oszone.net/showthread.php?t=129708)

Lirck 24-01-2009 13:08 1017831

Вы действительно хотите изменить расширение?
 
При изменении расширения, постоянно появляется окно:
Вы действительно хотите изменить расширение?

Как отключить это окно, чтобы оно не показывалось при изменении расширения?

Vadikan 24-01-2009 13:26 1017845

Lirck, включите отображение расширений (Свойства папки - Вид - Скрывать расширения для зарег. типов файлов.)

Lirck 24-01-2009 13:32 1017850

Мне нужно видеть расширения :) Я просто хочу при их изменении отключить это окно, так как оно жутко надоедает.

Yevgenijz 24-01-2009 13:44 1017863

Total Commander! :) :up или Far или Frigate
и никаких заморочек с проводником Сусаниным!

Vadikan 24-01-2009 13:55 1017874

Если речь идет об этом предупреждении



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

Если вы часто меняете расширения файлов и вас раздражает это предупреждение, используйте сторонние файловые менеджеры.

Admiral 27-01-2009 16:54 1021353

Вложений: 1
Lirck есть один код -> http://ja.pastebin.ca/raw/890971, скомпилировав который в программу и запустив последнюю - получим в диалогах удаления запрещается нажатия кнопки "Да"
Не трогайте эту папку, скрин был ранее загружен для примера. Если что про неё интересно - [решено] System Volume Information .:[все вопросы]:.
Если переназначить окно срабатывания (с удаление на переименование) - то получим тоже для сабжевого
А если ещё и подменить действие (блок и переименовка кнопки на клик по ней) то и вовсе получим одно из решений сабжа
Код:

#include <windows.h>

int WINAPI WinMain(HINSTANCE Instance, HINSTANCE PrevInstance,LPSTR CmdLine,int ShowCmd)

{

        HANDLE hMutex=CreateMutexA(0,FALSE,(".::Anti.Deleet.By.KOrUPt::."));
        if(GetLastError()==ERROR_ALREADY_EXISTS||GetLastError()==ERROR_ACCESS_DENIED)
        {
                CloseHandle(hMutex);
                //MessageBoxA(0,"Error, Already running..","Error",MB_ICONSTOP); //ENG
                MessageBoxA(0,"Ошибка, Уже запущенно..","Ошибка",MB_ICONSTOP);
                exit(0);
        }

        while(1)
        {
                Sleep(50);
                HWND activewin=GetForegroundWindow();

                char dialogname[150]="";
                char classname[201]="";       

                GetWindowTextA(activewin,dialogname,149);
                GetClassNameA(activewin,classname,200);
               
                //if(!strcmp(dialogname,"Rename")&&!strcmp(classname,"#32770")!=NULL) //ENG
                if(!strcmp(dialogname,"переименование")&&!strcmp(classname,"#32770")!=NULL)
                {                       
                        //HWND button=FindWindowExA(activewin,NULL,"Button","&Yes");//ENG
                        HWND button=FindWindowExA(activewin,NULL,"Button","&Да");
                        //SetWindowTextA(button,"Not allowed");
                        //EnableWindow(button,false);
                        SendMessageA(button,BM_CLICK,NULL,NULL);
                }

                if(GetAsyncKeyState('A')&&GetAsyncKeyState('W')&&GetAsyncKeyState(VK_SHIFT))
                {
                        Sleep(100);
                        break;
                }
                continue;
        }
        return 0;
}

Прога представляет собой безоконное Win32 приложение, работает в бекграунде, выключается комбинацией Shift + A + W, изначально написанное для английской версии.

Если ещё немного доделать программу - добавить CallBack на данное предупреждение (в авторском варианте прога всё время в поиска), то последнее возможно и вовсе не будет появляется на мгновение.

Наиболее адекватно такое решение считаю в случаи переименование htm/html, когда галку ...не выводить больше ставить не хочется. И то можно проследить - где галка в реестре отмечается, что б потом вернуть назад.
В других прочих случаях решение всё же искать стоит более рациональное, например посетив Автоматизацию действий.


Спасибо за внимание.


Время: 14:12.

Время: 14:12.
© OSzone.net 2001-