Windows shell extension / explorer extions

Hi,
I'm getting frustrated with an explorer plugin that lets me view images and their thumbnails within Windows Explorer. If I was to write something myself, where should I begin. I have a few tabs open on 'writing shell extensions' [2002], registering shell
extension handlers [C lang], etc. Of particular note is 'EZShellExtensions.net v2013' But I'm not sure what the situation is in 2014 with writing a custom thumbnail / image viewer.
I would prefer C#, but I've been working with C++ a bit lately (hopefully getting a bit better at using it) so if that were the preferable approach, I could probably tackle it.
I guess I was concerned that a lot of the material I'm seeing is quite old and I'm yet to find a recent article on writing extensions.
Thanks for any advice.

The overall documentation root is
here.  If you're not familiar with implementing COM interfaces, I can see how it could be a bit daunting to get started.  If you're open to C++, if you make an ATL project, you can add a class that has a lot of the support built in already
for you.  Click on Add Class, Select ATL->ATL Simple Object, give it a name, click next, and you'll be at the File Type Handler Options screen.  You can choose to make a preview handler, thumbnail handler, or search handler; the wizard will generate
the necessary skeleton code for you.  
WinSDK Support Team Blog: http://blogs.msdn.com/b/winsdk/

Similar Messages

  • Status of Windows Shell Extensions Support

    Hi,
    Are Windows Explorer Shell Extensions viable (Column Extensions in particular)? If so, is C++/ATL the best approach?
    All the article/docs I search seem to be 5-10 years old, and it appears .NET shell extensions are not recommended by Microsoft. I have been testing some .NET shell extensions with quite a bit of difficulty.
    warren

    Are Windows Explorer Shell Extensions viable (Column Extensions in particular)?
    I don't think column extensions have been viable since XP.
    All the article/docs I search seem to be 5-10 years old, and it appears .NET shell extensions are not recommended by Microsoft.
    Different camps at MS have said different things, especially when .Net
    4 came out, but I think the consensus is that it's not recommended to
    do shell extensions in .NET - however, people still do them! :(
    Dave

  • Windows 8.1 Explorer crash only on graphic extension files *.jpg *.png etc

    Like in title, when right click on graphic files explorer crash.
    No alerts no windows with some solution text etc. Explorer just shut down and restart...
    Please help me, I'm getting tired of this OS, way more buggy than windows 7.

    Hi,
    Did you install any application recently? According to your description, it seems like Shell Extension caused this problem, you can use ShellExView tool to check shell extension.
    ShellExView: http://www.nirsoft.net/utils/shexview.html
    Roger Lu
    TechNet Community Support

  • Acrobat X Shell Extension Causes Explore to Crash on Right Click

    Whenever user right clicks on a folder exepler.exe hangs.
    I isolated the problem using ShellView, to an Adobe shell extension named Acrobat Elements Context Menu.
    Disabling the following shell extension resolves the issue ContextMenu64.dll  version 10.1.4
    Computer OS Windows 7 Ultimate 64 bit SP1
    How Do I resolve this?

    Good post.
    Viewers will find ShellExView here.
    Ramesh explains its application here.
    -Jerry

  • Gnome-shell-extension-windows-navigator styling differs from the AUR

    I installed gnome-shell-extension-windows-navigator 3.0.1-0.20110513 from extra. When I used the AUR package, the styling was better.
    1) When hitting Ctrl the workspace number was displayed.
    2) When hitting Alt the window numbers were shown in the same style as close button just on the left side of the window. Now they are in the windows' top left corner and they are hard to seen.
    Is there a way to get that styling? I think I could get the extension's stylesheet.css from the AUR package, but it will be overwrite with every upgrade.thumbs

    sultanoswing wrote:https://extensions.gnome.org/
    derp. deeerrrrrp. DERRRPPRPRPRP. thanks man, forgot how easy things can be. -_-

  • Requesting 64-bit Shell Extension DLL

    Adobe support website states that Adobe Acrobat Pro is compatible with 64-bit versions of Windows. I am using Windows Vista Ultimate 64-bit and Acrobat X Pro, and I am missing the PDF tab from the file properties dialog box. This is because Explorer is a 64-bit program (since it is running on Windows Vista 64-bit). But if I do the same within the Open dialog box in Acrobat Pro I can see the PDF tab.
    In Windows Explorer:
    Open Windows Explorer (Win+E)
    Navigate to Desktop.
    Right click on a PDF file.
    Click Properties.
    See fi you can see the PDF tab in the dialog box that appears. If you are on 64-bit Windows Vista (maybe even Windows 7) you will not see this option.
    However, in Adobe Acrobat X Pro:
    Open Acrobat X Pro.
    Click File, then Open (Ctrl+O).
    Navigate to Desktop.
    Right click on a PDF file.
    Click Properties.
    Now you should be able to see the PDF tab in the file properties dialog box. Why it appears in Acrobat Pro but not when viewing the same dialog box from Explorer is because Acrobat Pro is a 32-bit software.
    The change I want to see is that the PDF tab will be visible, regardless of if you are viewing it from within the Open dialog box in Acrobat Pro or from Window Explorer. You need to either provide a fully functional and full featured 64-bit version of Acrobat Pro, or you need to provide a working 64-bit Shell Extension for compatibility with 64-bit Windows and 64-bit Explorer, and keep Acrobat Pro as 32-bit only.

    JGreatness,
    I could tell you, but I'd rather put the pressure on Oracle to deliver a 21st Century product. If you pay for maintenance, then you can log in and place an enhancement request.
    Now, if you don't care about support, then you can run the 32-bit application on Windows 2008R2 with a little tweaking. The main issue is with the printing to PDF. You need a couple of 64-bit DLL files for the Amyuni PDF printer. The files and associated installation instructions used to be available in the knowledgebase, but were later pulled.
    The best you can do for now and still receive support is stick with 32-bit and maximize your application and Java memory settings. I don't think the WebLogic option will gain you anything, as the 'tested configurations' document only lists 32-bit Windows as the host operating system, regardless if you use JBOSS or WebLogic. Speculating, I would say the main issue revolves around 64-bit Java, not the operating system or web application. If Oracle is going to continue to utilize the JDK and Java elements and deliver a 64-bit product, then they will have to convert all Java objects to 64-bit. Correct me if I'm wrong. Also, the executable service file they provide is 32-bit and would need to be converted.
    Sadly, they only provide support for what was, at one time, the most common platform among many CM shops. We need more options, but that increases Oracle's development and support costs. I would prefer to lose the Microsoft Office dependency for letter templates and log exports and run the whole thing on 64-bit Linux, but we can't have everything.
    As noted in a previous post, I suppose you could go ahead and get the DLL's via a purchase from Amyuni.
    I don't know if we could post the DLL's and instructions on the Yahoo message board.

  • The "WIndows 8.1 explorer slows down gradually" thread.

    The (now locked) previous thread was:
    http://social.technet.microsoft.com/Forums/en-US/f9ab40a8-6681-4c66-bdbd-9de7b2fb021f/action?threadDisplayName=windows-81-gradually-slows-down-after-hours-speed-returns-normal-if-restart
    I don't know why it is locked anyway, as EMKOEMKO was one of the "founders" of that thread months ago.
    So... to summarize:
    Explorer.exe has some sort of problem in windows 8.1, the system UI gradually becomes more and more unresponsive/jerky. Most notably DWM related funtions. As soon as you relaunch explorer.exe the problem dissappears and gradually comes back after a few hours.

    Hi,
    Compare the two process monitor logs, the log with the problem shows that the explorer.exe access the shellex more frequently and last a longer time than the log without problem, explorer issue can usually caused by imcompatible shell extensions, we can
    use ShellExView to check if it is the culprit, run ShellExView, in the pane sort the entries with manufacturers. Disable all non-Microsoft *.dll files, and check the result. If the issue does not occur, one of the files can be the culprit. We could narrow
    down it one by one.
    You can find more information about ShellExView in the link below
    http://technet.microsoft.com/en-us/magazine/2009.06.toolbox.aspx
    NOTE: Please Note: The third-party product discussed here is manufactured by a company that is  independent of Microsoft. We make no warranty, implied or otherwise, regarding this product's  performance or reliability.
    Yolanda Zhu
    TechNet Community Support

  • PS5 running sluggish adn saving files in windows shell common

    I recently started working with PS5 and have been encountering some errors recently. 
    At first my files were being saved as PSD files, then all of a sudden they began to be saved as windows shell comer files.  When I try to open them it says I need to find a program on the web to open photo. 
    I also am wondering about hte fact that it seems to take all my physical RAM memory when I have PS5 in use, I have 4GB of RAM and when I use the program I am at 91% + of memory usage.  It is a 64 bit operating system and if needed to know it is a M450 processor at 2.4 GHz.
    Seems that PS5 has really become sluggish since this problem with the way the file saves.  When working in the program it freezes up temporary and takes a long time to resize a photo and other functions.  I also have Perfect size and lightroom3.  Not sure if this is needed for a helpful answer, but maybe.  LOL 
    Thanks for any advice or assitence.. 

    Generally speaking, .PSD is a good format to save your edits in because it's lossless and can maintain all your layers, channels, and other fancy Photoshop features.
    You need to check the pixel count on saving as well.  If you've used Perfect Resize to radically increase the pixel count of the image you're saving this could help explain some of the speed issues you're seeing.  With most image work it's always good to keep the pixel dimensions in mind.
    If you're using Windows 7 here's how to show the file extension:
    1.  Click the Start orb and type folder into the search box.  When Folder Options comes up, click it.
    2.  Click the View tab.
    3.  Uncheck the [  ] Hide extensions for known file types box.
    Now Explorer windows and File Open/Save dialogs will show you the file extension.
    While you're editing Photoshop will normally gradually increase its memory use up to the limit you specify in Edit - Preferences - Performance, then hold onto it.  This is by design.
    -Noel

  • Install without Previewers, ifilter, or other shell extensions

    How can I install Adobe Acrobat Pro 9 (customizing with the Adobe Customization Wizard) so that I can install Acrobat without an ifilter for Windows Search service, previewers for Windows Explorer or Microsoft Office Outlook 2007, browser plug-ins, Windows Explorer thumbnail previews for pdf files, contextual menu extensions, or any other shell extensions?

    I am assuming you tried a custom install. You might be able to remove these items by moving them out of the
    plug-ins folder. I would just create a back up folder for the plugins you move. Other than the custom install, the plug-ins is the only option I can think of.

  • Saved files as .PSD now they are "Windows Shell Common Dll" and won't open?

    I am having a problem with opening some files in Photoshop. I am using Photoshop CS5.1 Extended (Version 12.1) and have Windows 7 64 bit SP1 OS.
    I am trying to open a few templates I made in PhotoShop for a client and they worked fine when I used them 3 weeks ago. All were saved as .psd documents. Now when I go to open them they no longer have the PS icon (to show they would be opened by PhotoShop). When I try to open them I get "Could not complete your request because it is not the right type of document." I have had this problem once before but it is confusing to me because 2 of the other similar .psd files I saved at the same timeframe(separate elements for the temlate) are perfectly fine, only the ones I need do not want to open.
    I checked file properties and it claims these files are now Windows Shell Common Dll files. Any ideas?

    I guess you were able to open them in photoshop with open as.
    In the future you should probably try to avoid using periods in the image file names other than for the file type extension.
    You could use - or_ in place of the periods as in VotePedia Invoice 1_5_13  or VotePedia Invoice 1-5-13
    Also, as Noel suggested, going into Control Panel>Appearace and Personalization>Folder Options>View
    and unchecking Hide extensions for known file types will help as well.

  • Gnome-shell-extensions for status bar

    Does anyone know if it would be possible to make a gnome-shell extension to make the status bar at the bottom of gnome-shell always visible and that windows don't cover it?
    Thanks.

    Please start Gnome3 threads in [testing] as it is still under testing.
    Moving...

  • Gnome shell extensions issues since 3.2 release...

    I may be a little early in the game here but I figured I would just mention that I'm having issues with pretty much all the cool extensions I had installed prior to 3.2.  I was wondering if anyone else was having similar issues.  I changed 3.0 to 3.2 in the metadata.js file to no avail, they are still unusable.  Was there any other changes that needed to be made?
    The ones I cared the most about are:
    system monitor (the cool one in the aur, not the one in repo)
    weather
    a11y (i know there is a hack, but I'd prefer a extension... or just an option to be able to remove the dang universal access icon period)
    frippery (which are a bunch of different ones such as the apps button, quick launch, and such)
    Also all my themes are a bit messed up... so what was the biggest changes in 3.2 besides the transparency finally working in the terminal?
    I still like gnome 3 and know sometimes you have to take steps back to go forward...

    wonder wrote:who cares about extensions. they are unsupported by upstream
    Well i care about extensions, since i can not login into gnome after updating to 3.2.
    Maybe i didnt spend hours on fixing the problems, but is this  the sence it is supposed to be?
    The extensions were disabled by default, after the error message came, and it didnt do anything.
    Then i moved the extensions out of  /usr/share/gnome-shell, to make it work temporarily.
    What happened? Only one extension left that made problems: gnome-shell-theme-selector.
    Does anybody how to switch this off? Or something, that can login again?
    Edit:
    i found the info again, that this theme-selector is in ~/.local/share/gnome-shell/extensions
    I moved the extension one directory higher. And now in this error message window it is said that i should re-login,
    but there is nothing said about any extension any more.
    Last edited by Archoid Billy (2011-10-02 15:58:31)

  • [Gnome Shell extension] PopupMenu not working

    Hi!
    I'm trying to develop a gnome shell extension, more precisely, a modification of the globalmenu extension. I want the old gnome2-globalmenu style instead of what have been already ported to gnome 3. So I've got a problem with my PopupMenu :
    I've got the menu but I can't click on it, the cursor doesn't have any effect on the menu, I can only click through all the menu items. The panel button code is shown below :
    function MyButton(label, path, app) {
    this._init(label, path, app);
    MyButton.prototype = {
    __proto__: PanelMenu.Button.prototype,
    _init: function(label, path, app) {
    PanelMenu.Button.prototype._init.call(this, 0.0);
    this._metaDisplay = global.screen.get_display();
    this._targetApp = app;
    let bin = new St.Bin();
    this.actor.add_actor(bin);
    this.actor.reactive = true;
    this._label = new St.Label({ style_class: 'panel-globalmenu-item',
    text: label
    bin.set_child(this._label);
    /*this._visible = !Main.overview.visible;
    if (!this._visible)
    this.actor.hide();
    Main.overview.connect('hiding', Lang.bind(this, function () {
    this.show();
    Main.overview.connect('showing', Lang.bind(this, function () {
    this.hide();
    this.menu.connect('open-state-changed', Lang.bind(this, this.refreshMenu, path, this.menu));
    refreshMenu: function(obj, open, path, menu) {
    if(!open) {
    return false;
    var xwindow = this._getTargetXWindow();
    if(xwindow != 0) {
    var manager = new Manager();
    manager.GetUiRemote(xwindow, path,
    Lang.bind(this, function(result, error, xwindow) {
    this.rebuildMenu(menu, path, result, xwindow);
    }, xwindow)
    return false;
    rebuildMenu: function(menu, path, ui, xwindow) {
    var xml = XML('<menu>'+ui+'</menu>');
    var i = 0;
    menu.removeAll();
    var current_group = new PopupMenu.PopupMenuSection();
    for each (var item in xml.*) {
    var visible = !([email protected]() == "false");
    var sensitive = !([email protected]() == "false");
    var menuitem = null;
    switch(item.name().toString()) {
    case "radio":
    case "check":
    var active = ([email protected]()=="true")
    menuitem = new PopupMenu.PopupSwitchMenuItem([email protected](), active);
    break;
    case "item":
    if([email protected]() == "true") {
    menuitem = new PopupMenu.PopupSubMenuMenuItem([email protected]());
    menuitem.menu = new PopupSubMenu(menuitem.actor, menuitem._triangle);
    menuitem.menu.connect('open-state-changed', Lang.bind(menuitem, menuitem._subMenuOpenStateChanged));
    menuitem.menu.connect('pre-open-state-changed',
    Lang.bind(this, this.refreshMenu, path + i + '/', menuitem.menu));
    } else {
    menuitem = new PopupMenu.PopupMenuItem([email protected]());
    break;
    case "separator":
    //menuitem = new PopupMenu.PopupSeparatorMenuItem();
    if(visible) {
    menu.addMenuItem(current_group);
    current_group = new PopupMenu.PopupMenuSection();
    break;
    case "empty":
    case "tearoff":
    default:
    menuitem = new PopupMenu.PopupMenuItem(item.name().toString());
    visible = false;
    break;
    if(menuitem) {
    if([email protected]() != "") {
    menuitem.actor.tooltip_text = [email protected]();
    menuitem.actor.has_tooltip = true;
    menuitem.actor.visible = visible;
    if(!sensitive) {
    menuitem.actor.add_style_pseudo_class('insensitive');
    menuitem.connect("activate", Lang.bind(this, function(menuitem, event, xwindow, path) {
    var manager = new Manager();
    manager.EmitRemote(xwindow, path);
    }, xwindow, path + i));
    current_group.addMenuItem(menuitem);
    i++;
    menu.addMenuItem(current_group);
    if (path == "/" && i == 1) {
    var quitMenu = new PopupMenu.PopupMenuItem("Close %s".format(this._targetApp.get_name()));
    menu.addMenuItem(quitMenu);
    quitMenu.connect('activate', Lang.bind(this, this._onQuit));
    _getTargetXWindow: function() {
    if (this._targetApp == null)
    return 0;
    var list = this._targetApp.get_windows();
    var window = list[0];
    return GlobalMenu.meta_window_get_xwindow(window);
    I don't know how to solve this issue, maybe someone could help me.

    No offense taken, and yes, I've seen the other threads. However this one is interesting since it a) works under root login and b) works on my laptop running an almost identical Arch setup (down to SLiM login and various other config files).
    Oh, and the gnome-shell-extension-apps-menu package is in the official repos, not AUR.
    Last edited by sultanoswing (2011-10-08 20:55:56)

  • Shell extensions and key stroke capturing...

    Hello. Me and my team are working on a project which converts English input from a QWERTY keyboard to Unicodes local Indian languages like Kannada, Tamil etc. We're using Java and SWT for UI. The program should run in such a way that once the program is running, wherever the user enters, he should be able to see the unicodes/indian language output. That is, the program should be a shell extension or a it must run in the background and capture the keystrokes of the active window the user is using. We are developing this software for both windows and linux. So is it possible to create shell extensions or implement the background window(process)?
    Are there APIs in linux to capture key strokes?? Is it possible to use Win32 WinHooks in windows to capture the key strokes??
    Edited by: abhinav_zoso on Jan 8, 2009 11:35 PM

    Are there APIs in linux to capture key strokes?? Is it possible to use Win32 WinHooks in windows to capture the key strokes??Those are not java questions. Programming forums specific to the OS will provide the answer. Or docs for that matter.
    ... which converts English input from a QWERTY keyboard to Unicodes local Indian languagesThat by itself doesn't make much sense unless you are talking about language translation rather than characters.
    The ASCII code set which would normally represent the entire english character set, is part of unicode. So no conversion needed.
    But perhaps you merely wish to map set of keystrokes into other characters? I would strongly suppose that at least windows already supports this in some format so I am not sure why you need java in the mix. Certainly, for example, if you had a computer set up to display another language character set and you want to put a key stroke interceptor in place that should be possible. And if the computer is not set up to display the language then what is the point?

  • Windows vista, internet explorer 8 and adobe reader 9

    I have windows vista, internet explorer 8 and adobe reader 9.  When i open pdf files from a website i cannot save the document.  I don't get an error message, it just does not open.

    Have you tried capturing these application in separate packages?  I have been successful in capturing IE8 in one package and Adobe Reader XI in another package and then using the OptionalAppLinks option in the IE8 package to point to the Adobe Reader dat file.  Just make sure that both packages work outside of the applinking.  Also, you can try to install Adobe to the native machine and see if the embedded pdfs work in the virtual IE package. 
    These are just the troubleshooting steps that I would take to narrow down what is causing the issue you are seeing.
    Lance

Maybe you are looking for

  • How do you pass vi references from one event to another

    I have a vi which gets vi references (thereby loading the vi's into memory) for all the vi's in a given directory when a user clicks a button on the front panel. To do this I use an event structure. My question is whether it is possible to have anoth

  • My Prefered Start Up Disk Stop Working

    Here's my problem: As of yesterday, my prefered start-up disk (on the Hard Drive "Bob") stop working as a start up disk. The smaller older Hard Drive "Michele" is the only one that works, and is dated back to June (thus being outdated with our Email,

  • HT1199 iTunes quits on opening and gives me the error message -45054?  Does anyone know what this error message is all about?

    I use iCloud for my music and recently deleted some duplicates from my desktop iMac (about a year old.)  Then tried to launch iTunes from the laptop about a 2008 macbook and get the error message -45054 and it won't open. Any ideas?  Would upgrading

  • Album song order not kept!

    Hello I imported lots of songs into my itunes library from various sources (itunes store, CD's, and audio files converted from my vinyl records) This way, songs from a specific artist, and sometimes from a specific album, could come from different so

  • SQL query to return list of table names.

    Hi all, I'm looking for a query that will return a list of the table names that exist in my Microsoft Access database. Any ideas?