2

When I right click on a column in Windows Explorer, I can choose which columns I want to see.

Where is that kept? Is this a "Shell Extension"? How can I add a new column and change it?

I don't care what language is used, except assembly unless you have to.

edit: A little clarification/example. If I have a text file, and I want it to have a new detail or metadata element, and I want to have that as part of the columns I can choose from to sort with, is that a Windows Shell Extension?

edit: https://msdn.microsoft.com/en-us/library/windows/desktop/bb776831%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

Looks like only XP and below has this.

edit: I think I want this. https://msdn.microsoft.com/en-us/library/windows/desktop/ff728869(v=vs.85).aspx

johnny
  • 19,272
  • 52
  • 157
  • 259
  • There is no *shell extension*. That's Windows Explorer itself. Shell extensions are written by others to add functionality to Explorer; you're describing built-in functionality. – Ken White Sep 09 '16 at 20:12
  • @KenWhite Is there a way to change it? Some programs like Office do, when they are installed. – johnny Sep 09 '16 at 20:15
  • You can write your own shell extension to add functionality to the shell. You asked about the name of the shell extension that controls columns, and I explained that it's not a shell extension that does so; it's built in behavior. I don't know if Explorer exposes the columns or not. Do some research (Google can help) regarding Windows shell extensions. – Ken White Sep 09 '16 at 20:18
  • @KenWhite I did way before I asked. :) – johnny Sep 09 '16 at 20:19
  • See [this link at MS](https://msdn.microsoft.com/en-us/library/windows/desktop/ff468984(v=vs.85).aspx), which lists the things that Explorer exposes for shell extensions. One of the things listed is the Columns handler (in your first link), which tells you exactly what steps you have to take and what functions you must use. So you know where you have to start, right? You're not expecting someone here to write the code for you, are you? – Ken White Sep 09 '16 at 20:32
  • @KenWhite That handler is deprecated, however. I saw it after I posted. I don't just stop reading because I posted a question on SO. And no, I don't expect someone to write the code for me. How I got downvoted I do not know. – johnny Sep 09 '16 at 20:39
  • I didn't downvote, although I did vote to close as too broad. The link you posted clearly says that column handlers are only in XP and earlier, which means that WIndows Vista and above do not expose that functionality, which means that you've got an answer now. What more do you need? – Ken White Sep 09 '16 at 20:41
  • 2
    Windows XP - Column handler, Windows Vista and above - Property handler. – Denis Anisimov Sep 09 '16 at 20:47