• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 554
  • Last Modified:

Running videos etc from a USB stick

Hello experts, I have a client who wants to distribute information docs and videos to their employees on a USB stick. He would like the stick to autorun, showing a menu which will launch the videos and docs. One of the videos has to be run as a DVD, not .mpg etc as it has its' own menu for the chapters, I've converted all the docs to pdf.
So far, I have created a small website on the stick with hyperlinks to launch all the files. The company I've approached to produce the sticks say they will do the autorun.
This works but often has problems opening videos. I've included VLC media player on the stick, which needs to be installed and the hyperlink is to the video_ts.ifo file, this works in IE but not Chrome as chrome always downloads the file before running and it only downloads the ifo file, not all the rest. I have included a script to detect when IE is not being used and pops up a message to advise people to use IE.
The trouble is the whole thing is not as slick as I would like, I have considered using a VB program for the menu but that would mean running an installation or ensuring that vbruntime is installed so it's not ideal.
Can anyone suggest a better method please?
  • 2
  • 2
2 Solutions
Daniel HelgenbergerCommented:
I think you cannot be sure what software users will use. Therefore, you have to test every single of them. I would try to avoid this on any cost - and I think you do not want to do all the testing yourself either.

To make sure everything runs smoothly, you need to be in charge of the player / playback environment.

This is the clean way:
You may want to take a look in Adobe Air / Flash standalone. Just start the flash in Presenter mode and all the things run in an environment of your preference, not involving any installed software on the client computer. You need to buy Flash, obviously.

This is a easier, but 'dirtier' way:
Supply the applications you want to use, firefox, chrome, vlc - whatever - as portable apps on the USB stick and make sure they are run instead of the installed one.
pcmwalesAuthor Commented:
Thanks for the comments, you're right and it's the dirty solution I've been using so far, I've included VLC and adobe reader on the stick. I'm not sure how to specify which application runs from the hyperlink, I just set it to open the file with the default application for that PC
Joe Winograd - EE Fellow & MVEDeveloperCommented:
I like your idea to write a program for the menu, because that way you'll have total control yourself...if you find that something in the process needs a tweak, you'll be able to do it.

I do most of my programming/scripting these days in a (FREE!) language called AutoHotkey. There have been several forks of the original language and my preferred one now is AutoHotkey_L:

Your client's employees probably have both 32-bit and 64-bit systems, so you should install the Unicode x86 (not x64) version of the binaries (you don't have to worry about compatibility with older scripts that would require the ANSI x86 version):

Since you're a VB programmer, you'll be able to pick up the AutoHotkey language easily. The reason I suggest it is that it comes with a compiler that creates a stand-alone/no-install executable:

When you compile the code, use the Unicode 32-bit Base File (for the same reason as stated above):
AHK compiler 32-bit UnicodeJust put the EXE that it creates on the stick and you'll be good-to-go. However, in terms of AutoRun on a USB stick, that's a can of worms. As you probably know, MS disabled this capability to stop malicious code (info about this is all over the net...just Google it). There are ways around this and that's what the company you approached to produce the sticks is likely going to do, but your client may not want to have this vulnerability. So you should think long and hard before doing it, and make sure your client understands the risk...you don't want them to hold you liable if the USB sticks that you provide to them become the conduit for a virus on their machines.

Now, back to AutoHotkey. To see how to compile a script and to see usage of the language in a program, here's an EE article that may be worth a read:
How To Combine-Merge-Append a Large Batch of TIFF Files

The program in the article above has a decent user interface, but it is largely based on dialog/message boxes. AutoHotkey has much stronger GUI support, so you'll be able to build the menu easily (and no installation or runtime is required after compilation into an EXE). For example, here's an EE post that shows option choices with radio buttons:

In summary, AutoHotkey has good documentation:

...with a thorough section for GUI:

...a decent tutorial:

...an extremely useful alphabetical list of all commands:

...and an active user forum:

Good luck on the project! Regards, Joe
pcmwalesAuthor Commented:
Thanks very much for the advice, I'll certainly check out Autohotkey, I like the idea that it will run an exe without going through an installation.
Joe Winograd - EE Fellow & MVEDeveloperCommented:
You're welcome. Happy to help.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now