Visual Basic - chyba

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Zamčeno
IIwetKKa
nováček
Příspěvky: 34
Registrován: 19 zář 2011 17:14

Visual Basic - chyba

Příspěvek od IIwetKKa »

Dobrý den,

píšu program ve Visual Basicu 2008. Je to něco jako databáze žáků a k nim předmět, známku a datum zadání.

Na jednom formuláři mám řazení podle: jména, příjmení, data, předmětu a známky. Všechna řazení fungují jen seřazení podle předmětu ne. Když stisknu tlačítko seřadit program se sekne a nic nedělá.

Asi po 2 minutách mi to napíše chybu:

Modul CLR nemohl přejít z kontextu COM 0x20fab0 do kontextu COM 0x20fc20 po dobu 60 sekund.
Podproces, který vlastní cílový kontext či apartment, pravděpodobně buď provádí čekání bez
čerpání, nebo zpracovává časově náročnou operaci bez čerpání zpráv systému Windows. Tato
situace má obecně negativní dopad na výkon a může vést k tomu, že aplikace přestane
odpovídat, nebo k trvalému nárůstu použité paměti. Chcete-li tyto potíže vyřešit, všechny
podprocesy typu STA by měly používat primitiva čekání s čerpáním
(například CoWaitForMultipleHandles) a pravidelně čerpat zprávy během časově náročných
operací.

Co mám udělat, aby mi to fungovalo?

Učitel, kterému mám program odevzdat říkal, že mu to vadit nebude, ale mě to tam strašně štve. :D

Děkuji za radu IIwetKKa :smile:
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Visual Basic - chyba

Příspěvek od CZechBoY »

pošli kod, takhle se nic poznat nedá
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
IIwetKKa
nováček
Příspěvky: 34
Registrován: 19 zář 2011 17:14

Re: Visual Basic - chyba

Příspěvek od IIwetKKa »

Kód: Vybrat vše

  Public Sub razeni_predmet()
        prehozeni = True
        Do While prehozeni = True
            prehozeni = False
            i = 0
            Do While i < (ID - 1)

                pomocna = aPredmet(i)
                a = pomocna.Length
                a = a - 1
                a = pomocna.Remove(1, a)
                pomocna = a

                pomocna1 = aPredmet(i + 1)
                b = pomocna1.Length
                b = b - 1
                b = pomocna1.Remove(1, b)
                pomocna1 = b

                If pomocna > pomocna1 Then
                    pomocna = aID(i + 1)
                    aID(i + 1) = aID(i)
                    aID(i) = pomocna

                    pomocna = aJmeno(i + 1)
                    aJmeno(i + 1) = aJmeno(i)
                    aJmeno(i) = pomocna

                    pomocna = aPrijmeni(i + 1)
                    aPrijmeni(i + 1) = aPrijmeni(i)
                    aPrijmeni(i) = pomocna

                    pomocna = aDatum(i + 1)
                    aDatum(i + 1) = aDatum(i)
                    aDatum(i) = pomocna

                    pomocna = aZnamka(i + 1)
                    aZnamka(i + 1) = aZnamka(i)
                    aZnamka(i) = pomocna

                    prehozeni = True
                ElseIf pomocna = pomocna1 Then
                    pomocna = aPredmet(i)
                    a = pomocna.Length
                    a = a - 2
                    a = pomocna.Remove(2, a)
                    pomocna = a
                    a = pomocna.Remove(0, 1)
                    pomocna = a

                    pomocna1 = aPredmet(i + 1)
                    b = pomocna1.Length
                    b = b - 2
                    b = pomocna1.Remove(2, b)
                    pomocna1 = b
                    b = pomocna1.Remove(0, 1)
                    pomocna1 = b
                    If pomocna > pomocna1 Then
                        pomocna = aID(i + 1)
                        aID(i + 1) = aID(i)
                        aID(i) = pomocna

                        pomocna = aJmeno(i + 1)
                        aJmeno(i + 1) = aJmeno(i)
                        aJmeno(i) = pomocna

                        pomocna = aPrijmeni(i + 1)
                        aPrijmeni(i + 1) = aPrijmeni(i)
                        aPrijmeni(i) = pomocna

                        pomocna = aDatum(i + 1)
                        aDatum(i + 1) = aDatum(i)
                        aDatum(i) = pomocna

                        pomocna = aZnamka(i + 1)
                        aZnamka(i + 1) = aZnamka(i)
                        aZnamka(i) = pomocna

                        prehozeni = True
                    End If
                End If
                i = i + 1
            Loop
        Loop

        For i = 0 To (ID - 1)
            Form2.ListBox1.Items.Add(aID(i))
            Form2.ListBox2.Items.Add(aJmeno(i))
            Form2.ListBox3.Items.Add(aPrijmeni(i))
            Form2.ListBox4.Items.Add(aDatum(i))
            Form2.ListBox5.Items.Add(aPredmet(i))
            Form2.ListBox6.Items.Add(aZnamka(i))
        Next
    End Sub


u jména, příjmení, známky a data mi to normálně funguje, ale tohle nejde...
IIwetKKa
nováček
Příspěvky: 34
Registrován: 19 zář 2011 17:14

Re: Visual Basic - chyba

Příspěvek od IIwetKKa »

chyba vyřešena... děkuji :)...

Děkuji
IIwetKKa
Zamčeno
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Chyba CPU na desce
    od petan320 » » v Problémy s hardwarem
    16 Odpovědi
    10715 Zobrazení
    Poslední příspěvek od petr22
  • Chyba příkazový řádek
    od zik9 » » v Windows 11, 10, 8...
    4 Odpovědi
    3611 Zobrazení
    Poslední příspěvek od zik9
  • Sqlite - systémová chyba
    od cindy the skull » » v Vše ostatní (sw)
    6 Odpovědi
    12387 Zobrazení
    Poslední příspěvek od atari
  • prohližeč událostí id 1796 chyba
    od walderan » » v Problémy s hardwarem
    9 Odpovědi
    6547 Zobrazení
    Poslední příspěvek od walderan
  • Windows Update nelze stáhnout, chyba 0x80070246
    od Rewqa » » v Windows 11, 10, 8...
    11 Odpovědi
    8991 Zobrazení
    Poslední příspěvek od Rewqa

Zpět na „Programování a tvorba webu“