Solved

Use Windows FileOpen dialogue in ASP (preferably with VbScript)

Posted on 2007-03-26
15
299 Views
Last Modified: 2008-01-09
I need to have a page (.ASP) that allows the user to use the standard Windows dialogue to select one or more files from their drives.

I have seen snippets of code to do this, but I haven't seen a complete example, and the snippets don't work (or I haven't been able to implement them successfully).

Can someone please post an example that will display the FileOpen dialogue when a button is pressed, and return one or more filepaths as a result.

I would prefer VbScript for this, however JavaScript would be acceptable as well.
           thanks,
                     PvBredow
0
Comment
Question by:PvBredow
  • 4
  • 4
  • 2
  • +1
15 Comments
 
LVL 12

Accepted Solution

by:
Sinoj Sebastian earned 168 total points
ID: 18792026
You mean File Field?
<INPUT id="File1" type="file" name="File1">
0
 
LVL 12

Expert Comment

by:Sinoj Sebastian
ID: 18792037
>I have seen snippets of code to do this
can we have it?
0
 
LVL 25

Expert Comment

by:kevp75
ID: 18792574
I haven't seen it with vbScript, however Ihave with Javascript....

http://the-stickman.com/web-development/javascript/upload-multiple-files-with-a-single-file-element/
0
 

Author Comment

by:PvBredow
ID: 18797116
Thanks for the replies.

<INPUT id="File1" type="file" name="File1">
is very CLOSE to what I am looking for, except for the (apparent) limitation that unlike the Windows Dialogue, it does NOT allow the user to select multiple files.        In my application, it is probable that many files would need to be selected, and although they would all be from the same directory, not all files in that directory could be selected.

           PvBredow
0
 
LVL 25

Expert Comment

by:kevp75
ID: 18797158
have a look at the link I posted.  I tried it, and it works.

I also use a (similar) method.  Minor exceptions though, what I do is force the client to selct the number of files they want to upload from a drop-down.  Once selected, that # of file fields appear (magically) on the page allowing them to browse for the files.  Problem is, they can only browse one at a time...

Very effective though, gives me great control over the number of files a client can upload....I mean, who really wants some yahoo coming to their site and trying to upload 140,000 files through one dialoge...
0
 

Author Comment

by:PvBredow
ID: 18798259
Thanks Kevp75.        

Am I mistaken in thinking that the actual windows dialogue can be called (as an ActiveX object)?  

Although I see the usefulness of the method you are suggesting, I would still prefer not to require the user to need to input the number of files they want to upload.        I have used the windows dialogue in VBA applications, and I am feeling a bit stubborn about trying to find a solution that works for multiple files in a single selection.

0
DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

 
LVL 25

Expert Comment

by:kevp75
ID: 18799557
Have you gotten a chance to check out that link?
0
 

Author Comment

by:PvBredow
ID: 18806609
Yes, I have looked at the example link you sent.       I think that method would be useful on a small scale, but in my application the scale may not always be small.

Essentially, my application is a document repository for use in a company.     I need to give users a simple way to 'enrol' files in the system.      As all files are on the same LAN, I don't really need to upload them, but I do need to make a reference of their addresses.        In the long run, files are likely be to added a few at a time, but as the system is being rolled out, users are likely to want to add large numbers of files, although not necessarily all in a directory.         This is why I am determined to try to pursue the idea of something like the windows fileopen dialogue, which allows mutliple file selection with click, shift-click, or control-click.

Still, thanks for the suggestion.
0
 
LVL 25

Assisted Solution

by:kevp75
kevp75 earned 166 total points
ID: 18807576
0
 

Author Comment

by:PvBredow
ID: 18922974
I haven't found a suitable solution yet.       If there are no further suggestions, I will leave my application as it is, and simply force all files to be selected one at a time.

Thanks for the suggestions.
0
 
LVL 65

Assisted Solution

by:RobSampson
RobSampson earned 166 total points
ID: 19125113
I have used the Windows Common Dialog in an HTA application using VBScript.  Here is the code:
Const intForReading = 1

Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "Text Files (*.txt,*.log)|*.txt;*.log|All Files (*.*)|*.*"
objDialog.FilterIndex = 1
objDialog.InitialDir = "."
intResult = objDialog.ShowOpen

If intResult = 0 Then
    Exit Function
End If

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile (objDialog.FileName, intForReading)
Do Until objFile.AtEndOfStream
    strSingleLine = objFile.ReadLine
      ' Do some stuff with each line
Loop
objFile.Close

Set objFile = Nothing
Set objFSO = Nothing

I hope you find that useful for your application.

Regards,

Rob.
0
 
LVL 65

Expert Comment

by:RobSampson
ID: 19125117
I haven't tested if this allows multiple files to be selected at once however.....maybe I will in due time, but it may return them as an array, or a comma separated list....

Regards,

Rob.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

It is a general practice to get rid of old user profiles on a computer  in a LAN environment. As I have been working with a company in a LAN environment where users move from one place to some other place at times. This will make many user profil…
Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

932 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now