Senior Windows Shell / Win32 Developer Needed for File Explorer Navigation Pane Extension

Posted 4 days ago

Worldwide

Summary

# Senior Windows Shell / Win32 Developer — Job Post **Title:** Senior Windows Shell Extension Developer (C++, COM, Shell Namespace Extensions) ## Overview We're a small Windows desktop software company. We want our app, QS, to show up directly in the Windows Explorer navigation pane, the same way iCloud Drive or Citrix ShareFile do: an expandable tree the user can drop down, containing their lists and nested sub-lists as folders. Users need to be able to add items, remove items, and reorganize items into nested lists, both from the right-click context menu anywhere in Explorer, and by working directly inside that navigation pane tree itself (dragging items in, out, and between nested lists). This is a full Shell Namespace Extension with live, two-way behavior. Not a static shortcut, and not a one-way jump list. We also need an existing C++ ATL/COM shell extension (right-click context menu integration) fixed and extended alongside this. Please don't apply if your experience is limited to WinForms/WPF app development without shell-level work. ## What you'll be doing - Build a Shell Namespace Extension so Quick Select appears as an expandable tree in the Explorer navigation pane, matching the behavior of apps like iCloud Drive or ShareFile - Implement drag and drop within that tree, so users can add, remove, and nest items directly inside the navigation pane, not only through a menu - Add right-click context menu verbs (Add to Quick Select, Remove, Move to a list) that work from anywhere in Explorer, not just inside the extension's own tree - Wire this up so changes made in Explorer show up immediately in our main app, and changes made in the app show up immediately in Explorer. No restart required in either direction - Fix and extend an existing C++ ATL/COM shell extension for right-click context menu integration - Get COM registration and installer/uninstaller registry behavior right, so install and removal stay clean on Windows 10 and 11 - Work alongside our existing architecture: a C# / .NET WPF app that talks to your C++ component over IPC (currently a named pipe, likely needs to become two-way) ## What we need from you - Senior-level C++, specifically ATL/COM - Direct experience with Shell Namespace Extensions: IShellFolder, IShellFolder2, IPersistFolder2, IEnumIDList, and PIDLs - Experience implementing IContextMenu for custom right-click verbs - Experience with IDropTarget and IDataObject for drag and drop into and within a custom namespace - Experience with SHChangeNotify or an equivalent approach for pushing live updates into Explorer, with no restart or manual refresh - Comfortable with Windows registry behavior for COM registration, per-user vs. per-machine registration, and installer cleanup - Able to explain your past shell extension work in plain terms, not just list it on a resume ## Nice to have - Direct experience building or maintaining shell integration for a cloud sync client (Dropbox, OneDrive, iCloud Drive, ShareFile, Box, or similar) is a strong plus - Experience with named pipes or similar IPC between a C++ component and a C# app - Familiarity with Microsoft Store packaging (MSIX) constraints for desktop apps - A portfolio example: a shell extension, overlay icon handler, or Explorer integration you built that shipped to real users ## Engagement We want a clear picture of real cost and timeline before committing to full scope. Please propose your hourly rate along with a rough estimate of hours for each piece (the namespace extension, and the context menu fix), so we can compare estimates before selecting anyone. ## Screening questions (please answer these in your proposal) 1. What is a PIDL, and why does it matter when writing a Shell Namespace Extension? 2. Describe a shell extension you've built or maintained that shipped to real users. What did it do? 3. What's the difference between registering a shell extension per-user versus per-machine, and why would you choose one over the other? 4. Have you implemented drag and drop (IDropTarget / IDataObject) into a custom Explorer namespace, or used SHChangeNotify to push live updates into Explorer? Briefly describe what you built.

  • Less than 30 hrs/week
    Hourly
  • 1-3 months
    Duration
  • Expert
    Experience Level
  • $25.00

    -

    $60.00

    Hourly
  • Remote Job
  • Ongoing project
    Project Type
Skills and Expertise
Mandatory skills
C++
C#
Desktop Application
Activity on this job
  • Proposals:20 to 50
  • Last viewed by client:2 days ago
  • Interviewing:
    0
  • Invites sent:
    0
  • Unanswered invites:
    0
About the client
Member since Jul 12, 2023
  • United States
    Chatsworth5:25 PM
  • $4.6K total spent
    10 hires, 2 active
  • Engineering & Architecture
    Individual client

Explore similar jobs on Upwork

Microsoft Word for Mac Expert NeededHourly‐ Posted 2 weeks ago
Microsoft Word
Office 365
Microsoft Office
Word Processing
OpenAI Codex
ChatGPT

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers earned on Upwork in 2020

Find the best freelance jobs

Growing your career is as easy as creating a free profile and finding work like this that fits your skills.

Trusted by

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo