TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
raghu
NA
2
0
exception please help
Dec 3 2008 1:16 AM
hi all, i am new to the forum and also new to c# and windows forms.i am trying to develop a windows form which can download multiple zip files by taking URL and filename as input from user. but getting an exception, Exception detail, System.Reflection.TargetInvocationException was unhandled Message="Exception has been thrown by the target of an invocation." Source="mscorlib" StackTrace: at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at System.Delegate.DynamicInvokeImpl(Object[] args) at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme) at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj) at System.Threading.ExecutionContext.runTryCode(Object userData) at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme) at System.Windows.Forms.Control.InvokeMarshaledCallbacks() at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(Form mainForm) at downloadmanager.Program.Main() in C:\winformsexp\downloadmanager\downloadmanager\Program.cs:line 17 at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() The source code, using System; using System.Threading; using System.IO; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net; using FolderZipper; using System.Collections; namespace downloadmanager { public partial class DownloadManagerForm : Form { int i = 0; List
wc = new List
(); List
dwnprogress = new List
(); List
dwnpercentage = new List
(); List
dwnfile = new List
(); public DownloadManagerForm() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void Downloadbutton_Click(object sender, EventArgs e) { string[] remoteUri =new string[20]; remoteUri[i]= URLtextBox.Text; string[] fileName = new string[20]; fileName[i]= FileNametextBox.Text; string[] myStringWebResource = new string[20]; string[] mysrcpath = new string[20]; //mysrcpath[i]= Application.StartupPath + "\\" + fileName; char[] separator ={ '.' }; string[] dir = fileName[i].Split(separator); string mydestinationpath = Application.StartupPath + "\\" + dir[0]; if (i == 0) { Label downloadingfiles = new Label(); downloadingfiles.Text = "Downloading Files"; downloadingfiles.Left = 191; downloadingfiles.Top = 230; this.Controls.Add(downloadingfiles); } wc.Add(new WebClient()); wc[i].DownloadFileCompleted += new AsyncCompletedEventHandler(Completed); wc[i].DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressChanged); // Concatenate the domain with the Web resource filename. myStringWebResource[i] = remoteUri[i] + fileName[i]; wc[i].BaseAddress = ""; //progressBar1.Visible = true; //label1.Text = fileName; dwnprogress.Add(new ProgressBar()); dwnprogress[i].Left = 108; dwnprogress[i].Top = this.Size.Height + 30; dwnpercentage.Add( new Label()); dwnpercentage[i].Left = 2; dwnpercentage[i].Top = this.Size.Height + 37; dwnfile.Add( new Label()); dwnfile[i].Text = fileName[i] + "//n" + remoteUri[i]; dwnfile[i].Left = 108; dwnfile[i].Top = dwnprogress[i].Top - 4; this.Controls.Add(dwnpercentage[i]); this.Controls.Add(dwnprogress[i]); this.Controls.Add(dwnfile[i]); wc[i].DownloadFileAsync(new Uri(myStringWebResource[i]), fileName[i]); i++; //ZipUtil.ZipFiles("C:\\Documents and Settings\\user1\\Desktop\\tower", "tower", ""); //Directory.CreateDirectory(mydestinationpath); //ZipUtil.UnZipFiles(mysrcpath, mydestinationpath, " } private void ProgressChanged(object sender, DownloadProgressChangedEventArgs e) { dwnprogress[i].Value = e.ProgressPercentage; dwnpercentage[i].Text = e.ProgressPercentage.ToString() + "%"; } private void Completed(object sender, AsyncCompletedEventArgs e) { dwnprogress[i].Visible = false; dwnpercentage[i].Text += " Download completed!"; MessageBox.Show("Download completed!"); } } } please do help.i would be very thankful for u.
Reply
Answers (
1
)
Re: Opening more windows forms
how to use ESC key to cancel editing