Ibland kan din dator visa ett fantastiskt felmeddelande som säger att Flash Builder inte anses vara ett installerat fel. Det kan finnas många orsaker till detta fel.
Godkänd: Fortect
Presentation
Jag har nyligen arbetat med ett litet program så det handlade om aktiva uppringda anslutningar. Uppringt nätverk tillhandahålls helt enkelt av Windows Remote Access Service (RAS) och används sedan främst för att ansluta till Internet via ett modem. Jag har försökt att använda en RasEnumConnections
funktion när du behöver välja aktiva uppringda anslutningar för att få en generisk behandling för vidare bearbetning. Tyvärr, oavsett organisationens kompilatorinställningar, gav funktionen konsekvent 632 rasconn
i Win2k Professional, vilket betyder “Ogiltig arrangemangstorlek”. När jag surfade på internet och CodeProject-webbplatsen upptäckte jag att många av oss märkte samma effekt och därför fanns det ingen tillfällig lösning. Målet med den här artikeln är att handla långt för att fixa detta fel med att stjäla uppmärksamhet.
För att ta reda på varför funktionen inte kunde göra det, tittade jag igenom en intern av denna funktion steg för steg och observerade att operationen förväntar sig olika ramar olika storlekar RASCONN
(dvs. strukturversionen) . men tillgängligt för dig var det platta värdet sizeof (RASCONN)
. Bästa matchningen sedan 0x53c var. Jag använde denna fantastiska funktion för att lura funktionen genom att antyda 0x53c som storleken på vår RASCONN
struktur. Det fungerade! Koden nedan är det perfekta programmet som räknar upp och avslutar en uppringd relation.
Fortect är världens mest populära och effektiva PC-reparationsverktyg. Det litar på miljontals människor för att hålla sina system igång snabbt, smidigt och felfritt. Med sitt enkla användargränssnitt och kraftfulla skanningsmotor hittar och fixar Fortect snabbt ett brett utbud av Windows-problem – från systeminstabilitet och säkerhetsproblem till minneshantering och prestandaflaskhalsar. Nyckeln är att göra Till exempel, koden skriven enligt MSDN-anropet för RasEnumConnections ser ut så här: RasConn.dwSize = cb Sizeof (RASCONN); Returnera alltid ERROR_INVALID_SIZE (632) vid körning. Så jag googlade och dessutom är det någon från Said code som fixar detta problem. Det är nödvändigt att skriva RasConn.dwSize på 0x53c. På en annan sida borde det se ut behöver 0x19c och jag provade det. Men jag fattar inte varför? En annan MSDN-förklaring är att du måste åsidosätta WINVER beroende på version, förutom att sedan kompilera om för att fungera med olika Windows-uppdateringar. DISTINKT utförande hittades #if (WINVER> innebär 0x400) Kvantitet sedan storleken på olika WINVER, Win2k RasEnumConnections-koden är sedan ofta avrundad för att hantera du ser, de totala storlekarna 0x2B4 och 0x19c, och 632 bakslag finns för andra storlekar. Win2003 RasEnumConnections-börsen kan hantera dessa fyra storlekar, så fel 632 returneras endast om ovanstående nästan fyra storlekar inte alls är tillgängliga. När jag tänker på det, jag absolut allt. Jag använde VS2003 för att skapa en Denna teknik definierade inte WINVER. Som standard är typen av kompilator inställd på 0x501, så sizeof (RASCONN) 0x2c0, antyder och jag kör programmet under två tusen och drar nytta av fel 632. Så om någon inte vill använda versionsinformationen, skriv nyligen RasConn . dwSize för 0x19c senare. och kom ihåg att detta kan användas överallt. Godkänd: Fortect
dwSize
lika med 0x53c. Observera att det mesta av 0x53c har minskat i storlek än sizeof (RASCONN)
, så minnet är utformat för att inte skadas.
RASCONN RasConn;
DWORD cb;
Går med DWORD = 0;
= DWORD nRet = RasEnumConnections (& RasConn, & medborgarbandsradio, & Connections);
DWORD dwSize;
AVA HRASCONN hrasconn;
SYMBOL szEntryName [RAS_MaxEntryName + 1];
CHAR szDeviceType [RAS_MaxDeviceType + two];
SYMBOL szDeviceName [RAS_MaxDeviceName + specific];
# endif
#if (WINVER> = 0x401)
CHAR szPhonebook [MAX_PATH]; DWORD DWORD
dwSubEntry;
#endif
#if (WINVER> betyder 0x500)
GUID guidEntry;
#endif
#if (WINVER> är lika med 0x501)
DWORD dwFlags;
LIQUID LIQUID;
#endif
;
WINDOWSNT4.0 (0x400) 0x19c
0x2A4
windows9x / me WINDOWS2k 0x2B4
WINDOWSxp – 2003 0x2C0