An alternative approach may be, to make a simple manager web app and run it on a local web server. As it's a web app, it can be accessed from a tablet, pc, phone or whatever.
Admins (workers) select which computer should play which video, from the manager web app's gui. Client apps check the web app periodically (say once every 5 seconds) too see if something is told them to play. After clients done playing, they report it to server (web app). For the files and scripts, you put them on server, and clients check for files like they check for commands, and download whatever is required from the server.
Or use websockets, and eliminate the need of continuous polling.
This approach may require more programming knowledge and more coding than sockets, but sockets require more management, such as managing ipIP addresses and ports of every client.
In the end both approaches are doable and feasible I think, but better yet, there may be some readily built productproducts that can satisfy your needs.
(windowsWindows play to feature or something similar maybe a help: http://windows.microsoft.com/en-us/windows7/using-the-play-to-feature-to-stream-media)