Если вы используете создание подклассов экземпляров (SetWindowLongPtr), то, поскольку, когда окно разрушается, не имеет значения, какой WndProc он использует - оно все равно исчезнет.
Если вы используете глобальное подклассирование (SetClassLongPtr), то, вероятно, было бы неплохо удалить подкласс, как только последнее подклассное окно закрыто (т.е. не для каждого окна), чтобы создавались любые будущие окна с этим классом не делайте подклассы - если, конечно, это не то, что вы хотите.