Jump to content

  • Log In with Google      Sign In   
  • Create Account

When opening a file using default program in windows..


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 lride   Members   -  Reputation: 633

Like
0Likes
Like

Posted 06 January 2013 - 12:59 AM

I made a small video player and I want my video player to be the default program for opening video files.

Does the video file's name become the argument(char** argv) to my program? (Windows)


An invisible text.

Sponsor:

#2 Dan Mayor   Crossbones+   -  Reputation: 1714

Like
0Likes
Like

Posted 06 January 2013 - 01:08 PM

You would have to modify the registry to have it open with your program.  You can do this yourself on your own machine you will need to create an installer program of some sort to do it on other people's machines (and in most cases may need to run the installer as admin to write to the correct registry locations.).  When you create the registry entries you can set what arguments it will send to your program, I think the default setup if you just right click, open with your program would be the same as calling "C:\full\path\to\myprogram.exe C;\full\path\to\video.mpg" or whatever the case may be from the console (dos) window.

 

http://msdn.microsoft.com/en-us/library/windows/desktop/cc144154(v=vs.85).aspx


Digivance Game Studios Founder:

Dan Mayor - Dan@Digivance.com
 www.Digivance.com


#3 superman3275   Crossbones+   -  Reputation: 2061

Like
0Likes
Like

Posted 06 January 2013 - 02:02 PM

Right click on a video file, hover over open with, choose your programs execution file, and check "Make this your default program". No need for registry editing :)!


I'm a game programmer and computer science ninja ph34r.png!

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

 

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here smile.png!


#4 Khatharr   Crossbones+   -  Reputation: 3038

Like
0Likes
Like

Posted 06 January 2013 - 10:52 PM

Does the video file's name become the argument(char** argv) to my program? (Windows)
If you compiled as a console program then your main function's prototype should be something like:

int main(int argc, char** argv);

The argc is the ARGument Count. The argv is the ARGument Values.

argv[0] is the name of your executable (the program's own file name).
argv[1] is the first command-line argument
argv[2] is the second command-line argument

etc. The command-line arguments are separated by spaces, except when enclosed by double quotes:

myprog -play my test video.mp4

argc[0] -> myprog
argc[1] -> -play
argc[2] -> my
argc[3] -> test
argc[4] -> video.mp4

myprog -play "my test video.mp4"

argc[0] -> myprog
argc[1] -> -play
argc[2] -> my test video.mp4

If you compiled the program as a windows program then your entry point prototype looks something like:

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow);

hInstance is the instance handle for your program, which is required by some functions. This is incidentally the base address of the module in memory, but that's trivia. You can also get this value by calling GetModuleHandle(0).

hPrevInstance is typically not used and is shrouded in ancient secrets kept by a select order of monks who never leave the basement of the Redmond campus.

lpCmdLine is a pointer to your command line, excluding the program itself.

nCmdShow is just something to pass to ShowWindow() if you want. It has the indicated user preference for how the window should be shown at program start (start minimized, etc).

lpCmdLine is something like this:

Typed at command line:

myprog -play my test video.mp4

Contents of lpCmdLine:

-play my test video.mp4

In other words, it's everything that came after the program name except for the first space.
void hurrrrrrrr() {__asm sub [ebp+4],5;}

There are ten kinds of people in this world: those who understand binary and those who don't.

#5 Arun Haridas   Members   -  Reputation: 148

Like
0Likes
Like

Posted 06 January 2013 - 11:49 PM

Create a batch file and write code like this

 

@echo off

assoc .mpeg=YourVPlayer

assoc .mp4=YourVPlayer

assoc .mp3=YourVPlayer

assoc .wav=YourVPlayer

[Write all the extensions that your software supports

type YourVPlayer=[Your software exe file path]

 

save as anyname.bat

You can use in you vedio player setup file or SFX file and run it automatically after installation

 

I think usefull.

Arun Haridas






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS