Windows explorer window class

Window Classes (Windows and Messages)

This topic describes the types of window classes, how the system locates them, and the elements that define the default behavior of windows that belong to them.

A window class is a set of attributes that the system uses as a template to create a window. Every window is a member of a window class. All window classes are process specific.

In This Section

Name Description
About Window Classes Discusses window classes. Each window class has an associated window procedure shared by all windows of the same class. The window procedure processes messages for all windows of that class and therefore controls their behavior and appearance.
Using Window Classes Demonstrates how to register a local window and use it to create a main window.
Window Class Reference Contains the API reference.

Window Class Functions

Name Description
GetClassInfoEx Retrieves information about a window class, including a handle to the small icon associated with the window class. The GetClassInfo function does not retrieve a handle to the small icon.
GetClassLong Retrieves the specified 32-bit (long) value from the WNDCLASSEX structure associated with the specified window.
GetClassLongPtr Retrieves the specified value from the WNDCLASSEX structure associated with the specified window.
GetClassName Retrieves the name of the class to which the specified window belongs.
GetWindowLong Retrieves information about the specified window. The function also retrieves the 32-bit (long) value at the specified offset into the extra window memory.
GetWindowLongPtr Retrieves information about the specified window. The function also retrieves the value at a specified offset into the extra window memory.
RegisterClass Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function.
RegisterClassEx Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function.
SetClassLongPtr Replaces the specified value at the specified offset in the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs.
SetClassWord Replaces the 16-bit (WORD) value at the specified offset into the extra class memory for the window class to which the specified window belongs.
SetWindowLong Changes an attribute of the specified window. The function also sets the 32-bit (long) value at the specified offset into the extra window memory.
SetWindowLongPtr Changes an attribute of the specified window. The function also sets a value at the specified offset in the extra window memory.
UnregisterClass Unregisters a window class, freeing the memory required for the class.

The following functions are obsolete.

Name Description
GetClassInfo Retrieves information about a window class.

[!Note]
The GetClassInfo function has been superseded by the GetClassInfoEx function. You can still use GetClassInfo, however, if you do not need information about the class small icon.

GetClassWord Retrieves the 16-bit (WORD) value at the specified offset into the extra class memory for the window class to which the specified window belongs.

[!Note]
This function is deprecated for any use other than nIndex set to GCW_ATOM. The function is provided only for compatibility with 16-bit versions of Windows. Applications should use the GetClassLong function.

SetClassLong Replaces the specified 32-bit (long) value at the specified offset into the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs.

[!Note]
This function has been superseded by the SetClassLongPtr function. To write code that is compatible with both 32-bit and 64-bit versions of Windows, use SetClassLongPtr.

База знаний
Try 2 Fix beta

Всё сразу: Не работает кнопка «Пуск», класс не зарегистрирован, «мигание» проводника в Windows 10

23 сентября 2016 ВК Tw Fb

К нам в сервис попал старенький ПК, купленный примерно в 2009. Раньше на нём стояла Windows 7, а после террора Microsoft обновлением установилась Windows 10. Всё было не так уж плохо до тех пор, пока (со слов пользователя) не прошло последнее обновление. Материала из этой статьи хватило бы на три-четыре самодостаточных публикации, но поскольку это всё встретилось нам на одном ПК и сразу, делить не будем. Итак, симптомы:

  • не работает кнопка «Пуск»;
  • не работают Metro приложения;
  • индикатор HDD на корпусе ПК не мигает, а горит ровно;
  • при открытии браузера Edge появляется ошибка «Explorer.exe Класс не зарегистрирован»;
  • и на закуску: после загрузки рабочего стола все ярлыки мигают в стиле полной перезагрузки Проводника, а панель задач пуста. Длиться это минуты две-три, потом догружается панель задач со всеми иконками, которые, как сказано выше, ни черта не работает.

Сразу отвечу на вопрос «Почему бы просто не переустановить систему?» — это не подход IT-Джедаев. На ПК море бухгалтерского софта, некоторый экзотический, поэтому гарантировать возвращение всего того, что было до переустановки невозможно, учитывая, что пользователь и сам не мог вспомнить всего того, чем пользуется, а чем нет.

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

Начинаем диагностику с наверно не с обозначенной проблемы, а того, что пользователь и не видел: индикации HDD.

Этап 1. Диагностируем HDD.

Первый делом через HDDScan я проверил S.M.A.R.T. HDD — никаких проблем, Bad-блоков нет, температура в норме, всё хорошо. Сморим в диспетчер задач. Процессов, загружающих HDD на все 100% нет. Антивирус Касперского 2017 периодически занимает всё время CPU, однако не перманентно. Ок. Это всё странно, пока отложим.

Этап 2. Боремся с проблемами Metro-приложений и меню «Пуск».

Переходим к обозначенной проблеме: не работает пуск. С этой проблемой я уже неоднократно сталкивался в рамках Windows 10. Помогает скрипт Powershell, найденный на просторах Интернет (спойлер: не помогло! ):

Ещё одно из найденных решений: отлючение XAML для панели задач. Делается это безумство вот так:

  1. В реестре ищем ветку:
  2. Создаём параметр DWORD (32 бита).
  3. Имя параметра EnableXAMLStartMenu, значение 0.
  4. Перезагружаемся.

Снова неудача. Всё на своих местах, проблема не решена .

На следующем этапе копнём глубже: начинаем системные проверки:

    Проверка целостности файлов:

В командной строке от имени администратора.
Исправляем ошибки Центра обновления Windows с помощью DISM (а вдруг, пользователь же на это жаловался)

Там же, от того же же администратора.

  • Перезагружаем. Снова провал .
  • К слову, антивирусные проверки Dr.Web CureIt!, AdwCleaner и MalwareBytes то же дали отрицательный результат. Последние обновления я удалил вручную — ничего.

    Этап 3. Смотрим журналы Windows.

    Пожалуй, с этого надо было начать (а может и нет). Журнал кишит сообщениями, связанными с ShellExperienceHost

    и вот это безобразие:

    Эти ошибки либо должны были быть исправлены на предыдущих этапах, либо не решены вообще без переустановки. Опять ничего . Пускаем в ход тяжёлую артиллерию.

    Этап 4. Тяжёлая артиллерия.

    Честно говоря, после окончания предыдущего этапа моя фантазия подошла к концу. Но прежде чем делать какие-либо безрассудства, проявим трусость: сделаем резервную копию всего HDD. С помощью Acronis True Image Home 2016 с диска Live начинаем резервное копирование. И тут появляется первая зацепка . На каком-то проценте появляется сообщение от Acronis: не могу прочитать сектор. Очень интересно, ведь S.M.A.R.T. чист. Тогда уже с другого live-диска DaRT 10 x64:

    1. Через diskpart ищем, какой раздел является системным. Выходим из diskpart.
    2. Запускаем

    (у нас C: для простоты, у Вас может быть другая буква).
    И о чудо! Видим следующее:

    Искать, что это за файл и зачем он нужен я не стал. Из его названия и так всё ясно.

  • Перезагружаемся.
  • Видим, что Рабочий стол больше не мигает, панель задач сразу содержит все иконки. Это похоже на успех ! Ошибка «Класс не зарегистрирован» ушла, Metro-приложения открываются. Но пуск по-прежнему не работает. А для решения этой проблемы мы снова выполняем скрипт и перезагружаемся. Ах да, сам скрипт для тех, кто забыл:

    Все проблемы решены! Можно открывать шампанское. Кстати, лампочка HDD теперь штатно мигает, а не горит постоянно.

    Эти статьи будут Вам интересны

    Mercury MPrint LP58 EVA: печатает непонятные символы («иероглифы», «кракозябры»)

    Клиент приобрёл указанный в заголовке принтер этикеток, потребовалось настроить его для 1С. Драйверы установлены, настройки принтера сделаны (размер бумаги, отступы). Ничто не предвещало беды. Пускаем на печать любой документ *.txt и вместо содержимого файла видим то, что можно увидеть на картинке, прикреплённой к этой записи. Разбираемся, почему это происходит.

    Печать контрольной ленты из ЭКЛЗ Штрих-ФР-К

    14 февраля 2017 ВК Tw Fb

    Для проверки отчётности иногда требуется получить полный перечень продаж (чеков) из фискального регистратора. Случается, что данные из учётной программы и данные из ЭКЛЗ расходятся (задваиваются или наоборот, какие-то продажи не проходят), и тогда требуется найти «виновного». Все чеки в учётной программе хранятся в доступном виде. Как же получить чеки с суммами из фискального регистратора? Рассказываем!

    Тюнинг PostgreSQL 9.4.2-1.1C для 1С:Предприятия 8.3: рельаный опыт настройки

    28 сентября 2016 ВК Tw Fb

    Как только размер файловой базы данных 1С:Предприятие одного из наших клиентов достиг размера в 32Гб (да, 32Гб), в следствии чего всё постепенно начало тормозить, а потом и встало намертво, наши клиенты попросили нас решить эту проблемы. SSD Enterprise класса ненадолго подсластил пилюлю, но через некоторое время всё вернулось в исходную точку. Ну что ж, тут и к бабке не ходи – переходим на SQL версию БД. Поскольку мы ярые пользователи Windows, доступно нам только два варианта СУБД – это MSSql и PostgreSQL. Первый хорош до безумия, но стоимость не порадовала. А ещё больше не порадовала новость о дополнительных лицензиях 1С для работы с MSSQL. Поэтому PostgreSQL. Подробная инструкция с видео доступна здесь. В этой статье мы пройдёмся по ключевым моментам. Не забываем про резервное копирование баз данных 1С! Исходные данные: ОС Windows Server 2008R2, Intel Core i7-2600K 3.40GHz, 32Gb RAM, Intel SSD DC3700 100Gb (только под БД, ОС на отдельном SSD), от 10 до 20 пользователей в БД ежедневно, обмен с 5 узлами распределённой БД в фоне. Зловеще, не правда ли? Приступим.

    База знаний «Try 2 Fix» Beta

    Все материалы свободны
    к распространению с обязательным
    указанием источника

    FIX: Explorer.exe class not registered in Windows 10

    • The Explorer.exe Class not registered error can be generated by various elements such as corrupted files or a faulty hard-drive.
    • You could switch your hard drive for a new one that comes with up to 7200 RPM. Check it out in the guide below.
    • Another efficient method will require you to run Command Prompt and manage certain DLL files.
    • In order to fix the Class not registered issue, you should also try to modify your standard browser.

    We have all encountered an error on Windows 10, and speaking of errors, it seems that some users are having the Explorer.exe class not registered error.

    As far as we know, this error can affect almost any software, and users have reported that Google Chrome isn’t working on Windows 10 due to this error.

    Google Chrome isn’t the only software affected by this issue, so let’s fix Class not registered error on Windows 10.

    Class not registered error message can cause various problems on your PC, and speaking of issues, many users reported the following problems as well:

    • Class not registered error when opening pictures, videos – According to users, this error message can appear while trying to open pictures or videos
    • Class not registered Windows 10 Photos – This error can appear on any version of Windows, and many users reported it while trying to run Photos app
    • Class not registered explorer.exe, Excel, regsvr32, Taskbar, uTorrent, Internet Explorer, Outlook, Microsoft Edge, Windows Media Player – Many users reported this error message while trying to run various applications like Outlook, Edge, or Internet Explorer, but it can also appear while using Windows Explorer
    • Class not registered PDF – In several cases, users reported this error while trying to open PDF files. This can be an issue, but you should be able to fix it using one of our solutions
    • Class not registered msstdfmt.dll – DLL files can sometimes cause this issue, so be sure to remove the application associated with that DLL file and check if that solves the problem

    How to fix Class not registered error in Windows 10?

    1. Disable iCloud

    1. Press Ctrl + Shift + Esc to start Task Manager.
    2. When Task Manager starts, find iCloud.
    3. Right-click it and choose End Task.

    Some reports show that this issue is caused by iCloud, and in order to fix it, you need to close iCloud with Task Manager and disable following the steps above.

    1. Open Task Manager and go to the Startup tab.
    2. Find iCould, right-click it, and choose Disable.

    In addition, you can also disable iCloud from starting up by using Task Manager. If you want to know more about how to add or remove startup apps, take a look at this in-depth article.

    2. Re-register ExplorerFrame.dll file

    1. Open Command Prompt as administrator. To do that press Windows key + X and choose Command Prompt (Admin) from the menu.
    2. When Command Prompt starts, paste the following code and press Enter to run it: regsvr32 ExplorerFrame.dll

    If Internet Explorer keeps crashing while giving you the Class not registered error, you might need to open the Command Prompt and manage certain DLL files.

    3. Check your hard drive

    • Hardware interface of SATA 6.0 Gb/s
    • Generous space of 2000 GB
    • Fast speed of 220 Megabytes per second
    • Not as fast as a SSD

    In some rare cases, Class not registered error can be caused by a faulty hard drive, so make sure that your hard drive is working properly. Few users have reported that replacing their hard drives has fixed this issue for them.

    That’s why we recommend you to use a high-quality hard drive, like the Seagate BarraCuda 2 TB, which provides 2000 GB of space along with a read-speed of 220 Megabytes per second.

    This is a 3.5 inch SATA 6Gb/s HDD that also comes with a 7200 RPM that ensures a that your PC will run smoothly each time and a 256MB Cache of 3.5-Inch.

    4. Use a great browser

    When it comes to an issue like the Class not registered error on your browser, a great idea would for you to switch to an excellent search-engine.

    We recpommend an established browser that comes with a built-in VPN which means that your online experience is safe from cyber threats.

    In addition, you have some really fun extensions like the incorporated Messenger app. You also get your own news feed on the start page, as well as a snap-shot tool and sync data capabilities.

    5. Use Component Services

    1. Press Windows Key + R and type the line below then press Enter or OK to run it. dcomcnfg
    2. When the C omponent Services window opens, go to Component Services, then click Computers, then go to My Computer and d ouble click DCOM Config..
    3. You should get a few warning messages. If that happens, just click Yes .
    4. Now close Component Services and restart your computer.
    5. After doing that, this error message should stop appearing.

    Most users have stated that modifying certain settings from the Component Services menu has solved the problem for them.

    1. Go to the Settings app . You can open the Settings app quickly by using Windows Key + I shortcut.
    2. When the Settings app opens, navigate to the Accounts section.
    3. In the right pane, choose Family & other people from the menu on the left. In the right pane, click on Add someone else on this PC .
    4. Enter your Microsoft account email and click Next .

    Log out of your current account and switch to a new one. If you’re having trouble opening the Setting app, take a look at this article to solve the issue.

    If there’s no other way to fix Class not registered error on your Windows 10, you might want to create a new Microsoft account, so just take a look at the next solution.

    6. Create a new Microsoft account

    1. Open Settings, then click Accounts.
    2. Click Sign in with a local account instead . You’ll be asked to enter your password .
    3. After doing that, you’ll have to enter the username and password for your local account.
    4. Click Sign out and finish button. Now log back to your account.

    You’ll have to enter the username and password for your local account as well. After you’ve switched to a local account, repeat the steps from the beginning of this solution.

    We have to mention that this solution might not work unless you choose to sign in with a local account instead. To switch to the local account, follow the steps above.

    7. Set Microsoft Edge as the default browser

    1. Press Windows Key + S and type control panel . Choose Control Panel from the list of results.
    2. Control Panel window will now appear. Select Default Programs from the list.
    3. When the Default Programs window opens, select Set your default programs.
    4. Navigate to the Web browser section and click on your browser.
    5. Select Microsoft Edge from the list.
    6. Open the Settings app and go to the Apps section.
    7. From the pane on the left select Default apps.
    8. Go to the Web browser section set Internet Explorer as the default browser

    After setting Internet Explorer or Microsoft Edge as the default browser, the Class not registered explorer.exe problem should be completely resolved.

    8. Check if Internet Explorer ETW Collector Service is running

    1. Press Windows Key + R to open the Run dialog. Now enter services.msc and click OK .
    2. In the list of services find Internet Explorer ETW Collector Service , right-click it, and choose Start .
    3. Start Task Manager and go to the Details tab.
    4. Find explorer.exe and right-click it. Choose End Task from the menu.
    5. Now in Task Manager go to File, then click Run new task.
    6. Create new task window will appear. Type explorer and click OK .

    Class not registered error often affects Internet Explorer and Microsoft Edge, so if you’re having this problem with these browsers, try the instructions above.

    After you complete this procedure, Explorer will start again, and everything should be working accordingly.

    9. Change default image viewer to Windows Photo Viewer

    1. Find any picture on your computer and right-click it.
    2. From the menu choose Open with, click Choose another app.
    3. Select Windows Photo Viewer from the list. If you want to use only Windows Photo Viewer to view pictures, make sure that you select Always use this app to open .jpg files . Click OK to save changes.

    If you don’t want to add any changes to your registry, you can simply download any free image viewing software, install it on your computer and repeat all steps starting from Step 2.

    As we already mentioned Class not registered error can appear when you try to view .jpg files, and if this happens, you might want to set your default image viewer to Windows Photo Viewer.

    10. Reset default apps

    1. Open Settings, go to Apps, select Default apps.
    2. Scroll down until you see Reset to the Microsoft recommended defaults. Click the Reset button.
    3. Open Settings, go to Apps, select Default apps.
    4. Scroll down until you see Reset to the Microsoft recommended defaults. Click the Reset button.

    According to users, Class not registered error appears when they try to open a .jpg file on their computer, and this problem can be fixed by resetting default apps. To do that, follow these instructions:

    If you can’t change the Windows default apps, check out this comprehensive article that will help you do just that.

    The Explorer.exe class not registered error can cause all sorts of problems on your computer, but we hope that our solutions have fixed this issue for you.

    If you have any more questions, feel free to drop them in the comments section below.

    Читайте также:  Пароль для apache windows
    Оцените статью