Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

On Windows Vista, I would like to open all files of a certain extension with a little VBS file (which will then pass on the parameter to a Chrome Application Shortcut app, which is actually what I want). Using a BAT or CMD file with batch commands works fine -- but shows the batch window for a second which is suboptimal -- but when using a VBS file including just a "hello world" echo, my German OS tells me something along the lines of "C:..path-to-text-file.. is not an admissible Win32 application". Can someone help?

share|improve this question
    
Somewhat of a followup for my particular project's original goal -- getting Chrome App to launch parametrized) is this regedit file (blogoscoped.com/temp/chrome-launcher-reg-file.txt). –  Philipp Lenssen Oct 6 '09 at 10:48
add comment

1 Answer

up vote 0 down vote accepted

The VBS file needs to have a .vbs extension if it doesn't already.

You can try the ftype and assoc commands.

assoc .yyy=YourScript
ftype YourScript=yourscript.vbs %1 %*

From the help command in cmd:

Displays or modifies file types used in file extension associations

FTYPE [fileType[=[openCommandString]]]

fileType Specifies the file type to examine or change openCommandString Specifies the open command to use when launching files of this type.

Type FTYPE without parameters to display the current file types that have open command strings defined. FTYPE is invoked with just a file type, it displays the current open command string for that file type. Specify nothing for the open command string and the FTYPE command will delete the open command string for the file type. Within an open command string %0 or %1 are substituted with the file name being launched through the assocation. %* gets all the parameters and %2 gets the 1st parameter, %3 the second, etc. %~n gets all the remaining parameters starting with the nth parameter, where n may be between 2 and 9, inclusive. For example:

ASSOC .pl=PerlScript
FTYPE PerlScript=perl.exe %1 %*

would allow you to invoke a Perl script as follows:

script.pl 1 2 3

If you want to eliminate the need to type the extensions, then do the following:

set PATHEXT=.pl;%PATHEXT%

and the script could be invoked as follows:

script 1 2 3

and

Displays or modifies file extension associations

ASSOC [.ext[=[fileType]]]

.ext Specifies the file extension to associate the file type with fileType Specifies the file type to associate with the file extension

Type ASSOC without parameters to display the current file associations. If ASSOC is invoked with just a file extension, it displays the current file association for that file extension. Specify nothing for the file type and the command will delete the association for the file extension.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.