Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Augusto P F

Access Violation Exception = Unhandled

Recommended Posts

Oi Pessoal, estou com um problema de accessviolation

 

uso somente um componente shockwave e salvo um arquivo .txt de navegação para o flash.

 

No explorer normal não acontece isso jah cheguei a testar, porem no .NET está ocorrendo

 

Procurei no google que nem loco e achei um meio tratar com try e catch, mais ainda não consegui eliminar ele, e não sei como resolver, ai vai o código:

 

Public Class clientForm

 

Dim telainicial As String = "C:\inetpub\wwwroot\Client\main.swf"

 

Private Sub MYExceptionHandler(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs)

Try

 

Catch ex As Exception

MessageBox.Show("ERRO:" + ex.ToString)

End Try

End Sub

 

Private Sub MYThreadHandler(ByVal sender As Object, ByVal e As Threading.ThreadExceptionEventArgs)

Try

 

Catch ex As Exception

MessageBox.Show("ERRO:" + ex.ToString)

End Try

End Sub

 

Private Sub telaAxShockwaveFlash_FSCommand(ByVal sender As Object, ByVal e As AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEvent) Handles telaAxShockwaveFlash.FSCommand

Try

Dim sw As New System.IO.StreamWriter("C:\inetpub\wwwroot\Client\navegacao.txt")

sw.WriteLine("&navegacao=" + e.command.ToString + "#")

sw.Close()

If e.args.ToString = "menu" Then

telaAxShockwaveFlash.LoadMovie(0, telainicial)

 

Else

telaAxShockwaveFlash.LoadMovie(0, "C:\inetpub\wwwroot\Client\" + e.args.ToString)

End If

 

Catch ex As AccessViolationException

MessageBox.Show("FSCOMMAND")

End Try

 

 

End Sub

 

Private Sub clientForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

 

Dim currentDomain As AppDomain = AppDomain.CurrentDomain

 

'Receber evento UnhandledException como AccessViolation =(

AddHandler currentDomain.UnhandledException, AddressOf MYExceptionHandler

 

'Receber evento exception como dividir por zero

AddHandler Application.ThreadException, AddressOf MYThreadHandler

 

telaAxShockwaveFlash.LoadMovie(0, telainicial)

End Sub

 

 

Private Sub voltarButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles voltarButton.Click

 

telaAxShockwaveFlash.LoadMovie(0, telainicial)

End Sub

End Class

 

e o erro:

 

System.AccessViolationException was unhandled

Message="Tentativa de leitura ou gravação em memória protegida. Normalmente, isso é uma indicação de que outra memória está danificada."

Source="System.Windows.Forms"

StackTrace:

em System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)

em System.Windows.Forms.NativeWindow.DefWndProc(Message& m)

em System.Windows.Forms.Control.DefWndProc(Message& m)

em System.Windows.Forms.Control.WndProc(Message& m)

em System.Windows.Forms.AxHost.WndProc(Message& m)

em System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

em System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

em System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

em System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)

em System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNat

iveMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)

em System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)

em System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)

em System.Windows.Forms.Application.Run(ApplicationContext context)

em Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()

em Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicat

ionModel()

em Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String

[] commandLine)

em WindowsApplication1.My.MyApplication.Main(String[] Args) na 17d14f5c-a337-4978-8281-53493378c1071.vb:linha 81

em System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)

em System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)

em Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()

em System.Threading.ThreadHelper.ThreadStart_Context(Object state)

em System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

em System.Threading.ThreadHelper.ThreadStart()

InnerException:

 

 

---------------------------------------------------------------------------------------------------------

 

Por favor me ajudem jah não sei mais o que fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Presumo que seja Web.

 

Veja se a pasta tem acesso para os grupos de usuário do IIS (IUSR e IIS_IUSRS).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Presumo que seja Web.

 

Veja se a pasta tem acesso para os grupos de usuário do IIS (IUSR e IIS_IUSRS).

 

Hummm bom acabei de colocar permissão total e vou testar fora da pasta iis tb, nossa nunca pensei que o iis ia influenciar sem ter colocado o caminho de web como localhost.

 

 

Vo testar aqui vlw pela resposta

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.