This is the way how many of us do set a route on windows:
route add 10.10.0.0 mask 255.255.0.0 10.77.77.1 if 58 -p
In the command line 58 is the Interface Index (IF) and most of the time its value is constant for a specific network interface card. Therefore one can create a CMD batch file to automate deletion and re-setting of all the routes she/he need.
However, in my case I have a USB 3.0 to Dual Port Gigabit Ethernet Adapter NIC, and its IFs change every time when I connect to the USB port of my notebook. What I do, just open a cmd shell, get the current Interface IDs by giving route print, then open the CMD batch file with text editor and change all the old IF (ex: 58) values, save&close, and at last run the CMD batch file on the shell.
If there is a way to set a route only by knowing the MAC address, not depending of the IF - then the problem is solved :) The solution may be a simple one line CMD command (set route by MAC), or maybe first get the IF by MAC and set route by IF (set route by IF of the MAC).
Any help is highly appreciated!