Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

long filename argument in dotNet application

Posted on 2009-05-19
6
Medium Priority
?
398 Views
Last Modified: 2013-11-25
I am writing a dotNet application.  This application accepts argument in the Main function.  I want to be able to drag and drop a file onto this application.  When the file has a normal filename (ie without space), everything works fine.  When the file has a long filename with space, then I want the filename to be considered as one argument surrounded with double quotes (ie not 2 arguments when there is a space in the filename).

This dotNet application may have switches.

One example is when I create a *.bat file.  When I drag and drop another file onto this *.bat file, the %1 argument contains a filename surrounded by double quotes.

How can I achieve this in dotNet?
0
Comment
Question by:Guy2
  • 3
  • 2
6 Comments
 
LVL 5

Expert Comment

by:karstieman
ID: 24426751
I'm not quite sure why there has to be a problem with long filenames, but you can declare a string and put the filename into. That way you can have as mush spaces as you'd like.
0
 

Author Comment

by:Guy2
ID: 24426767
As the application allow switches, some spaces are normal whereas some are within the long filename.  I want to distinguish between the two.  Moreover, in a drag and drop scenario, I do not know in advance the filename that will be used.
0
 
LVL 86

Expert Comment

by:Mike Tomlinson
ID: 24427321
What version VB.net?...and is there a STRONG reason for starting with Sub Main()?
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 

Author Comment

by:Guy2
ID: 24429343
VB.Net 2.0.

I understand that Sub Main is the only way we can get command line arguments.  Is there any other way?
0
 
LVL 86

Accepted Solution

by:
Mike Tomlinson earned 2000 total points
ID: 24432470
There are several other ways...

(1) Event based approach:
Read the overview: http://msdn.microsoft.com/en-us/library/w3xx6ewx(VS.80).aspx
Startup() Event: http://msdn.microsoft.com/en-us/library/t4zch4d2(VS.80).aspx
StartupNextInstance() Event: http://msdn.microsoft.com/en-us/library/b9z4eyh8(VS.80).aspx
To use this approach the "Enable Application Framework" box must be CHECKED.  On that same tab, click on the "View Application Events" button in the bottom right to get the editor window.  Then change the two dropdowns across the top to get these events.  You can use "e.CommandLine" in either event to get the parameters.

(2) Accessing the parameters when YOU want them:
(a) My.Application.CommandLineArgs(): http://msdn.microsoft.com/en-us/library/z2d603cy(VS.80).aspx
(b) Environment.GetCommandLineArgs: http://msdn.microsoft.com/en-us/library/system.environment.getcommandlineargs(VS.80).aspx
(c)  Environment.CommandLine: http://msdn.microsoft.com/en-us/library/system.environment.commandline(VS.80).aspx
0
 

Author Closing Comment

by:Guy2
ID: 31583239
Good!
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
In real business world data are crucial and sometimes data are shared among different information systems. Hence, an agreeable file transfer protocol need to be established.
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Look below the covers at a subform control , and the form that is inside it. Explore properties and see how easy it is to aggregate, get statistics, and synchronize results for your data. A Microsoft Access subform is used to show relevant calcul…

564 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question