Solved

Win32Exception was Unhandled......

Posted on 2007-03-23
5
1,529 Views
Last Modified: 2009-07-29
Hello Experts,

I have develop a small vb.net app for decompilation of chm's....but i am stuck at getting error as Win32Exception was unhandled.

Can you please help me to get rid of this, where i am wrong?

Please find below code for the same...

Imports System
Imports System.IO
Imports System.Data
Imports System.Security.AccessControl
Imports System.Diagnostics
Public Class Form1
    Private mstrFolderCHMFiles As String = ""
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim foldername As String
        If FolderBrowserDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
            foldername = FolderBrowserDialog1.SelectedPath()
        Else
            Dim Results As DialogResult = FolderBrowserDialog1.ShowDialog
            If Results = Windows.Forms.DialogResult.Cancel Then
                Return
            End If
            Exit Sub
        End If
        mstrFolderCHMFiles = FolderBrowserDialog1.SelectedPath()
        txtinput.Text = foldername
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Application.Exit()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim filename As String
        Dim mydir As New DirectoryInfo(mstrFolderCHMFiles)
        Dim f As FileInfo() = mydir.GetFiles("*.chm")
        Dim i As Integer
        For i = 0 To f.Length - 1
            filename = f(i).FullName
            'Create folder based on filename
            Dim sDir As String = f(i).DirectoryName & "\" & f(i).Name.Replace(f(i).Extension, "")
            If Not (Directory.Exists(sDir)) Then
                Directory.CreateDirectory(sDir)
                Dim startinfo As New ProcessStartInfo
                Dim p As New Process
                startinfo.WindowStyle = ProcessWindowStyle.Normal
                startinfo.ErrorDialog = False
                startinfo.FileName = "C:\WINDOWS\hh.exe -decompile " + sDir + "   " + filename
                'startinfo.Arguments = "-decompile"
                'startinfo.Arguments = sDir
                'startinfo.Arguments = filename
                startinfo.UseShellExecute = False
                Process.Start(startinfo)                                ''''''getting error at this location...
            End If
        Next
        MsgBox("Decompilation Done!!")
    End Sub
End Class


Thanks,
Shailesh
0
Comment
Question by:ShaileshShinde
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
5 Comments
 
LVL 47

Expert Comment

by:Wayne Taylor (webtubbs)
ID: 18778299
Hi ShaileshShinde,

Try catching the error. Like this....

        Try
            Process.Start(startinfo)
        Catch Win32ex As System.ComponentModel.Win32Exception
            MsgBox(Win32ex.Message)
        End Try

Regards,

Wayne
0
 
LVL 1

Author Comment

by:ShaileshShinde
ID: 18778356
Hello Expert,


By adding above lines of code it shows an message as ...

The filename, directory name, or volume label syntax is incorrect..

Can you please help where the changes required..

Thanks,
Shailesh
0
 
LVL 2

Accepted Solution

by:
_Eyeball_ earned 250 total points
ID: 18778377
mhm... try it this way:

startinfo.FileName = "C:\WINDOWS\hh.exe"
startinfo.Arguments = "-decompile " + sDir + "   " + filename

I think your problem may be that you mixed up filename and arguments!

Hope this helps!

Best regards
0
 
LVL 1

Author Comment

by:ShaileshShinde
ID: 18778445
Hello Expert,

This works now!!! Thanks a lot!!!

One more query related to this..

If i de-compile more than 5 chm's files... the process atr background is still running..where as i got the msg as decompilation done....

what was the cause of this...or any other way of doing this..

Thanks,
Shailesh
0
 
LVL 2

Expert Comment

by:_Eyeball_
ID: 18778463
Mhm i would guess that (becouse of Process is working assynchrone) that you're simply starting processes faster than they can worked! Do the background processes close after a while?

best regards
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

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

Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
This is a high-level webinar that covers the history of enterprise open source database use. It addresses both the advantages companies see in using open source database technologies, as well as the fears and reservations they might have. In this…
There are cases when e.g. an IT administrator wants to have full access and view into selected mailboxes on Exchange server, directly from his own email account in Outlook or Outlook Web Access. This proves useful when for example administrator want…

717 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