Hello Hej Nettan, Så här står det exakt Hej Nettan <b>Lägg koden som orsakar felet i Form_Activate ,sist i Form_Activate.</b> Jag har ingen kod i ACTIVATE ... Låter som du behöver debugga programmet mer. >Jag har ingen kod i ACTIVATE ... FORTFARANDE INTE LÖST.. Hej Nettan Hejsan Sven Igen Jaaa du Sven :-)) Hej Hejsa Sven mfl Guld kul att hjälpa till med råd och dådruntime error 340
Vid installation av ett VB 6.0 projekt händer följande i RUNTIME
En watchdog är aktiverad som startar om datorn och startar upp projektet automatiskt.
Varje gång datorn startas upp så får jag fellmeddelandet
"Run time error 340 ,element 0 in array is out of bounds" Därefter kraschar programmet. Om jag däremot startar datorn och därefter explicit kickar igång projektet. Då fungerar det.....
Jag har testat följande;
Starta projektet från en sub Main istället för att formuläret laddas direkt.
Detta resulterar i att projektet inte startar upp alls!
Jag har lagt in debugutskrifter som visar att det första som händer när projektet startar är detta felmeddelande. Därefter laddas det första formuläret och så kraschar hela programmet !!
ÄR DET NÅGON SOM HAR NÅGRA IDÈER ??Sv: runtime error 340
Jag har försökt att hitta mer information angående felmeddelandet.
1. Är du säker på att detta är det korrekta felmeddelandet?
2. Visas meddelandet med en Hjälp/Help knapp?
3. Windows version + Service Packs installerad?
Lite mer utförlig information om vad programmet gör och om man kan reproducera felet, skulle också vara bra att veta.
mvh
NicholasSv: runtime error 340
Rune-time error '340':
Control array element '0' doesn't existSv: runtime error 340
Spånar lite.
Det är ju precis som meddelandet säger,dvs den kontrollen med index 0
existerar inte.Varför ? , den har inte blivit laddad.
Sätter en "tunna skit" på att felet uppstår i en Form_Load.
Lägg koden som orsakar felet i Form_Activate ,sist i Form_Activate.
Ungefär samma fel som du skrev till mig om DLPORTIO:SYS.
Hur gick det med mina råd ??
mvh
SvenSv: runtime error 340
Eftersom Form_Activate körs varje gång forumläret aktiveras måste du kolla så att du inte "varit där" tidigare.
/JohanSv: runtime error 340
Detta fel uppstår endast om jag startar programmet i autostart från windows !!
Det är dessutom inge kod som exekverar från min "mjukvara" när kraschen uppstår. Jag kan ha en msgbox först i from LOAD som jag inte klickar på .. Trots detta kommer felmeddelandet efter några sekunder !Sv: runtime error 340
Prova att kommentera den kod som du tror felar samt kontrollen.
Lägg till en ny kontroll.
Uppstår samma problem igen?
Dessutom, vad händer om du startar programmet från Start|Run?
mvh
NicholasSv: runtime error 340
Men det är där du skall ha det mesta som tillhör Formens Service.
Kolla in mitt Beenhere tips o trix.
/SvenSv: runtime error 340
Jag repeterar... Jag har ringat in orsaken till att det INTE har med min kod att göra. Felet uppstår INNAN min kod exekverar.
Det verkar som om någon komponent som ligger i formuläret inte kan accessas i samband med uppstarten av Windows.
Det är BARA när programmet startas i autostart som detta problem uppstår !!!!!!
Jag har debuggat på alla tänkbara sätt. Det ända som fungerar är att jag lägger en delay på uppemot 90 sekunder INNAN formuläret laddas.
Det här problemet har uppstått i samband med att systemet ska driftsättas vilket gör att det är BRÅTTOM att hitta en säker lösning.
TACKSAM FÖR ALLA FÖRSLAG
NettanSv: runtime error 340
Du svarar ju inte på de frågor man ställer.
Nu frågar jag igen.Finns DLPORTIO.SYS med i problemställningen.
Tror att du kör Win 2000 eller XP är det så ??.
Finns det en KontrollArray inblandad. ? Så här skriver Du
>En watchdog är aktiverad som startar om datorn och startar upp projektet automatiskt.
>Varje gång datorn startas upp så får jag fellmeddelandet
"Run time error 340 ,element 0 in array is out of bounds" Därefter kraschar >programmet. Om jag däremot startar datorn och därefter explicit kickar igång >projektet. Då fungerar det.....
Det betyder ju att din applikation försöker manipulera med datorn innan
hela det normala uppstartningsförloppet är klart.
Man skulle kunna tänka sig någon form av timer som väntar ett antal
sek innan din applikation kör igång.
På något sätt måste du förvissa dig om att den normala datorstarten är Ok.
Ordern om att ditt program skall köra igång kommer innan datorn är helt klar.
Slutligen , vad menar du med denna rad.Vad gör du ?
>Vid installation av ett VB 6.0 projekt händer följande i RUNTIME
/SvenSv: runtime error 340
Jag har skickat imail till dig där jag svarat på dina frågor ang DLPortio.SYS. Har du inte fått dem ??
När form_load eventet körs har inte watchdogen startats. Därför jag har svårt att tro att det är det som orsakar problemet. Visserligen har jag snart inga idéer kvar....
Jag har redan testat med att lägga en delay i sub_main på ca 90 sekunder och det fungerar... för det mesta... Men jag tycker att det känns som lite osäkert sätt att lösa problemet. Visserligen löser det kanske mitt akuta problem men ORSAKEN är ju inte fastställd.
Jag kör Windows 2000 ...
Med det sista menar jag att detta sker inte i utvecklingsmiljön utan bara i "RUNTIME"-miljö !!!
NettanSv: runtime error 340
mmmmmmmmmmmmmmmmmm. känner igen problemmet att
saker och ting fungerar i Design läge och inte i Runtime.
Då får Vi tittat på hur du kompilerat din exe.
Vilken metod har du användt. Kolla under Options när du gör Make Exe
Svar detaljerat kolla även Advanced.
/SvenSv: runtime error 340
Även det har vi varit inne på !
Jag har kollat och kollat på alla kompileringsinställningar...
Även i advanced..
Vi ( jag o Peter ) tror nu att problemet kan vara en array av MSCOM-komponenter.
Komponenterna har indexen 1 och 2 . Kanske systemet kräver att det ska finnas ett element (0). ??? Håller på att testa denna teori nu.
Återkommer om det löste problemet
Nettan
Sv: runtime error 340
>Kanske systemet kräver att det ska finnas ett element (0)
Javisst är det så, alla arrayer skall ha minst element (0) fr.o.m Nu
Har själv haft strul med detta när man skriver MinArray() As Long tex.
Sen måste man se till att det blir Redim så att arrayen åtminstone har 1 element (0)
Under Advanced har du en Ubound arraycheck tror att den är inblandad.
I värsta fall får du lägga in en "dummy" nolla som du inte använder,
så slipper du ändra i en massa kod.
Lycka till . Helt övertygad om att det är detta som är felet.
/SvenSv: runtime error 340
Vi har löst problemt nu !!
Vi lade till en COM port med index 0 och då fungerade det..
Vojjne Vojjne !! Att det kunde vara så simpelt
Tackar o Bugar för all hjälp
NettanSv: runtime error 340
Du har hjälpt mig en gång med ett binary prob.
Vad blev Sentensen , Jo använd aldrig Option 1 dvs att arrayer skall
börja på annat än 0. Om du vill börja på 1 så ha med 0 som "dummy"
Ha det
Sven