Allow me to elaborate a bit more.
My question is how to get enough information to the TF command (or UndoCheckout extension) to have it undo a checkout from another user. I know it’s possible using TF Undo, but you have to specify the exact file name (including the TFS path), workspace, and the project collection. Is there a way for me to get the list of files and workspaces back from GetPendingChanges so that I can pass to an undo command? It appears that GetPendingChanges will return a string that has what the pending changes are – is there a way to parse the workspace and filename from PendingChangesExistItem?
Example of a successful TF undo command: tf undo /workspace:TX-LT13142 $/MyPath/BaseClasses/BaseClass1.dll /collection:http://blah.blah.blah/
Works a treat. I just need to be able to do that based on what GetPendingChanges returns, if possible.