After all, I’m a developer too, so i quickly created a smart c++ console app that does what I needed.
Not only it detects if the window is already opened but also if it is will select it to show on top instead of reopening it (handy when your previous windows is buried below other ones since last time you exported).
Now if not present, it will launch explorer of course but also wait that the window is shown (otherwise code would be sometimes unreliable when multiple files are generated at once)…
Open_Explorer-fab.zip (76.1 KB)
Works a treat and app was trivial to code, so here’s the solution for you:
Enjoy! 
Here the quick (and not so dirty) cpp console app source code too :
#include <Windows.h>
#include <stdio.h>
#include <string.h>
#include "Shlwapi.h"
// Console app that launches an explorer window only if it is not already open, if it is it will show it to user as well instead of reopening.
bool FindExplorerWindowWithPath(const char* target_path)
{
HWND hwnd = FindWindow("CabinetWClass", nullptr);
char window_title[MAX_PATH];
while (hwnd)
{
GetWindowText(hwnd, window_title, sizeof(window_title));
if (strstr(window_title, target_path))
{
SetForegroundWindow(hwnd);
return true;
}
hwnd = FindWindowEx(nullptr, hwnd, "CabinetWClass", nullptr);
}
return false;
}
int main(int argc, char* argv[])
{
if (argc != 2)
{
printf("Usage: %s path\n", argv[0]);
return 2;
}
char* path = argv[1];
char target_path[MAX_PATH];
if (!GetFullPathName(path, MAX_PATH, target_path, nullptr))
{
fprintf(stderr, "Error: %s is not a valid path.\n", path);
return 3;
}
// Normalize input to always remove ending backslash and also being a dir
if(!PathIsDirectory(target_path)) PathRemoveFileSpec(target_path);
size_t l = strlen(target_path);
if (l > 1 && target_path[l - 1] == '\\') target_path[l - 1] = '\0';
if (!FindExplorerWindowWithPath(target_path))
{
fprintf(stdout, "Opening explorer window for path: %s...\n", target_path);
char command[1024];
snprintf(command, sizeof command, "explorer \"%s\"", target_path);
if (!system(command)) fprintf(stderr, "Error: failed to run explorer for path: %s\n", target_path);
else
{
for (int i = 0; i < 20; i++)
{
Sleep(100);
if (FindExplorerWindowWithPath(target_path)) break;
}
}
}
else
{
fprintf(stderr, "Explorer window for path: %s already exists...\n", target_path);
return 1;
}
return 0;
}
Note: you need my new script too in the zip.