[VB.Net] exception bug in framework ?

Pagina: 1
Acties:
  • 278 views sinds 30-01-2008
  • Reageer

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
Beetje ranzige topictitel, maar wist even geen betere.

Ik heb een textbox die ik vul met een path door middel van een button en een folderbrowserdialog.
Het programmaatje draait al een maand zonder problemen.
Opeens kwamen er errors tevoorschijn.
Er is op de client niks verandert. Ook op mijn laptop waar ik dit programma heb gemaakt komt de bug te voorschijn.
Dit is het stukje code:
Visual Basic:
1
2
3
4
5
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then
            RichTextBox2.Text = FolderBrowserDialog1.SelectedPath
        End If
    End Sub

Zoals jullie kunnen zien heb ik de textbox ondertussen vervangen voor een richtextbox, ik dacht misschien dat de textbox control een of ander limiet in zich had.

De foutmelding treed op op het moment dat ik de "OK" knop inklik van de folderbrowserdialog.
Ik heb dus het path geselcteerd door middel van een directory te selecteren.

Foutmelding:
code:
1
2
3
4
5
6
7
8
9
10
[Resource lookup failed - infinite recursion detected.  
Resource name: Arg_NullReferenceException]

An unhandled exception of type 'System.Runtime.InteropServices.SEHException' occurred in system.windows.forms.dll

Additional information: Een extern onderdeel heeft een uitzondering veroorzaakt.

An unhandled exception of type 'System.Runtime.InteropServices.SEHException' occurred in system.windows.forms.dll

Additional information: Een extern onderdeel heeft een uitzondering veroorzaakt.


Ik heb uiteraard op google gezocht, maar het enige wat ik kan vinden is over een corrupte .com die optreed in windows 2000 sp2.

Ik ben uiteraard nog steeds aan het zoeken.
De exception komt uit de dialog box voort.
Nu staat er veel geschreven over het feit dat
enablevisualstyles()
veel problemen geeft.
Echter gebruik ik dit niet....
Maar ik denk wel dat ik het in deze hoek moet zoeken.

De clients bestaan uit:
Windows 2000 professional sp4 met .net framework 1.1
Windows XP professional sp2 met .net framework 1.1

Wie kan mij een beetje verder helpen ?

[ Voor 23% gewijzigd door Remco op 13-12-2004 21:40 ]

The best thing about UDP jokes is that I don't care if you get them or not.


  • eghie
  • Registratie: Februari 2002
  • Niet online

eghie

Spoken words!

Ik heb hier Windows XP prof sp2 met .net framework 1.1 en hier werkt het gewoon. Precies dezelfde code. het zit hem waarschijnlijk toch ergens anders in.

  • MrSleeves
  • Registratie: Februari 2004
  • Laatst online: 10-04 19:23

MrSleeves

You'll thank me later.

Maakt het nog uit welke folder je selecteert?

Probeer eens
Visual Basic .NET:
1
2
Application.EnableVisualStyles
Application.DoEvents

in de New van de startForm of in de Main (ook al gebruik je dat nu niet).

Probeer de FolderBrowserDialog. Misschien werkt dat.
Geen garanties, maar anders zou ik het ook niet weten. De exception komt me wel bekend voor trouwens.

30Drie Web Design & IT Consultancy | Raven Consultancy Services


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
Chief.NET schreef op dinsdag 14 december 2004 @ 16:33:
Maakt het nog uit welke folder je selecteert?

Probeer eens
Visual Basic .NET:
1
2
Application.EnableVisualStyles
Application.DoEvents

in de New van de startForm of in de Main (ook al gebruik je dat nu niet).

Probeer de FolderBrowserDialog. Misschien werkt dat.
Geen garanties, maar anders zou ik het ook niet weten. De exception komt me wel bekend voor trouwens.
Je code maakt geen verschil.

Ik ben er wel achter gekomen dat als ik een heel lang path selecteer (200+ tekens) de foutmelding naar voren komt op het moment dat ik een folder selecteer. Dus nog niet op OK druk.
Als ik eerst een kort path selecteer, en daarna weer het lange, dan gaat het goed.

The best thing about UDP jokes is that I don't care if you get them or not.


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
Ik denk toch wel dat ik een onwijs probleem heb:
Laatste paar postings:

http://www.google.nl/sear...alog+null+reference&hl=nl

[ Voor 8% gewijzigd door Remco op 14-12-2004 21:04 ]

The best thing about UDP jokes is that I don't care if you get them or not.


  • eghie
  • Registratie: Februari 2002
  • Niet online

eghie

Spoken words!

Ik kan hier makkelijk 200+ tekens mappen selecteren van bijv. 12 mappen diep. Ik heb hier verder geen problemen mee.

Ik zou eens proberen om het .NET framework eens opnieuw te installeren en VS.NET eens opnieuw te installeren. Mischien is er wel een deel van dat folder dialog componentje naar de bagger.

Probeer dit bestandje eens uit:
FolderBrowserTest.exe

Dit bestandje heb ik snel ff gebouwd in VB.NET voor .NET framework 1.1. Hierin zit een richtextbox en een folderbrowsedialog. Deze 2 zijn gewoon standaard componenten in VS.NET 2003 met standaard instellingen. Werkt dit wel bij jou :? Bij mij in ieder geval wel.

In de titel van de Form kun je de path lengte zien.


Holy fuck, ik kom me hier toch een security risk tegen. :X In IE opent hij hem gewoon rechtstreeks als je op de link klikt :| :X Wel in een beveiligde omgeving (deze app werkt daar niet in), maar dit kan best link zijn als je dingen kunt uitvoeren die dwars door de beveiliging heen gaan. Hij draait dan onder de "IEExec.exe" instantie.

[ Voor 65% gewijzigd door eghie op 15-12-2004 10:21 ]


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

Anders vransel je even je eigen FolderBrowseDialog in elkaar? Ik dacht dat EfBe er ook nog wel 1 op ze site had staan onder opensource.

  • MrSleeves
  • Registratie: Februari 2004
  • Laatst online: 10-04 19:23

MrSleeves

You'll thank me later.

Misschien niet echt netjes, maar probeer eens een DoEvents vlak voor de ShowDialog.

Denk eigenlijk niet dat het werkt, maargoed.
Geef je een 'SelectedPath' op? of is dat leeg?

En heb je ook al geprobeerd om de FolderBrowserDialog als local te gebruiken?

30Drie Web Design & IT Consultancy | Raven Consultancy Services


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
[quote]eghie schreef op woensdag 15 december 2004 @ 09:59:
Ik kan hier makkelijk 200+ tekens mappen selecteren van bijv. 12 mappen diep. Ik heb hier verder geen problemen mee.

Probeer dit bestandje eens uit:
FolderBrowserTest.exe

[knip]quote]
Krijg hiermee ook een foutmelding
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Zie het einde van dit bericht voor meer informatie over het aanroepen 
van JIT-foutopsporing (Just In Time) in plaats van dit dialoogvenster.

************** Tekst van uitzondering **************
System.Runtime.InteropServices.SEHException: Een extern onderdeel heeft een uitzondering veroorzaakt.
   at System.Windows.Forms.Shell32.SHBrowseForFolder(BROWSEINFO lpbi)
   at System.Windows.Forms.FolderBrowserDialog.RunDialog(IntPtr hWndOwner)
   at System.Windows.Forms.CommonDialog.ShowDialog()
   at oeps.Form1.Button1_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Ik zal vanmiddag framework eens opnieuw installeren.
In ieder geval hartstikke bedankt

The best thing about UDP jokes is that I don't care if you get them or not.


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

Is hiet niet makkelijker om zelf even snel een FolderBrowseDialog in elkaar te flansen?

De link voor EfBe's browsel is http://www.sd.nl/pages/files/frmDirPicker.zip

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
Chief.NET schreef op woensdag 15 december 2004 @ 10:07:
Misschien niet echt netjes, maar probeer eens een DoEvents vlak voor de ShowDialog.

Denk eigenlijk niet dat het werkt, maargoed.
Geef je een 'SelectedPath' op? of is dat leeg?

En heb je ook al geprobeerd om de FolderBrowserDialog als local te gebruiken?
application.doevents() helpt niet.

Een selectedpath opgeven, zodat deze niet leeg is, werkt ook niet.

Wat bedoel je met local te gebruiken ?

[ Voor 10% gewijzigd door Remco op 15-12-2004 11:57 ]

The best thing about UDP jokes is that I don't care if you get them or not.


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
questa schreef op woensdag 15 december 2004 @ 11:48:
Is hiet niet makkelijker om zelf even snel een FolderBrowseDialog in elkaar te flansen?

De link voor EfBe's browsel is http://www.sd.nl/pages/files/frmDirPicker.zip
Ben ik op dit moment even aan het bekijken.
Vandaar dat ik er nog geen reply op had gegeven.
Echter is c#, en heb ik niet geinstalleerd.
Maar dat maakt niet uit.
Ik kom er nog op terug.

The best thing about UDP jokes is that I don't care if you get them or not.


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 18-05 09:50

pjvandesande

GC.Collect(head);

Remc0 schreef op woensdag 15 december 2004 @ 11:58:
[...]

Ben ik op dit moment even aan het bekijken.
Vandaar dat ik er nog geen reply op had gegeven.
Echter is c#, en heb ik niet geinstalleerd.
Maar dat maakt niet uit.
Ik kom er nog op terug.
Je zou het zelf even kunnen optype naar VB.NET, class namen zijn toch allemaal hetzelfde alleen anderen syntax. Ik wacht af. :)

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 17:38
questa schreef op woensdag 15 december 2004 @ 12:01:
[...]


Je zou het zelf even kunnen optype naar VB.NET, class namen zijn toch allemaal hetzelfde alleen anderen syntax. Ik wacht af. :)
Aangezien ik liever lui dan moe ben, heb ik eerst even op google gezocht naar een vb source.
Ik kwam toen uit bij het vbpowerpack:
http://msdn.microsoft.com...hart/html/vbpowerpack.asp

Deze heb ik even geprobeerd, en dat ziet er goed uit.

Het is niet de mooiste oplossing, maar het is maar een superklein tooltje voor 1 gebruiker.
Ik kan er dus niet te veel uren in gaan steken.

In mijn vrije tijd ga ik bovenstaand probleem wel eens verder uitwerken.
Ik laat het dus hierbij.

Allen bedankt.....

The best thing about UDP jokes is that I don't care if you get them or not.


  • riezebosch
  • Registratie: Oktober 2001
  • Laatst online: 16-05 11:22
eghie schreef op woensdag 15 december 2004 @ 09:59:
[...]
Probeer dit bestandje eens uit:
FolderBrowserTest.exe
[...]
Holy fuck, ik kom me hier toch een security risk tegen. :X In IE opent hij hem gewoon rechtstreeks als je op de link klikt :| :X Wel in een beveiligde omgeving (deze app werkt daar niet in), maar dit kan best link zijn als je dingen kunt uitvoeren die dwars door de beveiliging heen gaan. Hij draait dan onder de "IEExec.exe" instantie.
Inderdaad! Hier opent ie ook gewoon direct na 't klikken! 8)7

Canon EOS 400D + 18-55mm F3.5-5.6 + 50mm F1.8 II + 24-105 F4L + 430EX Speedlite + Crumpler Pretty Boy Back Pack


  • _js_
  • Registratie: Oktober 2002
  • Laatst online: 13-01 07:19
eghie schreef op woensdag 15 december 2004 @ 09:59:Holy fuck, ik kom me hier toch een security risk tegen. :X In IE opent hij hem gewoon rechtstreeks als je op de link klikt :| :X Wel in een beveiligde omgeving (deze app werkt daar niet in), maar dit kan best link zijn als je dingen kunt uitvoeren die dwars door de beveiliging heen gaan. Hij draait dan onder de "IEExec.exe" instantie.
Ik kan in de folderbrowser wel mappen maken en verwijderen... Hoort dat wel te mogen in een partially trusted environment? En is die folderbrowser ook te hooken in .Net, zodat je code er berichtjes naar toe kan sturen?
Pagina: 1