Eroare DNC: "Runtime Error 339 / 429" (Componentă ActiveX / OCX lipsă)
De ce software-ul DNC mai vechi poate eșua la instalare sau se poate bloca în timpul execuției.
"Runtime Error 339: Component '[nume_fișier].ocx' or one of its dependencies is not correctly registered" (Componenta nu este înregistrată corect):
Apare atunci când un fișier necesar lipsește sau nu a fost instalat corect pe versiunile mai noi de Windows."Runtime Error 429: ActiveX component can't create object" (Componenta ActiveX nu poate crea obiectul):
Apare atunci când programul încearcă să utilizeze un fișier, dar acesta refuză să ruleze pe versiunile mai noi de Windows.Cauza și soluția pentru calculatoarele din secția de producție
Aplicațiile software mai vechi/legacy se bazează adesea pe fișiere auxiliare separate pentru a afișa sau gestiona elemente precum casete de text, butoane, meniuri și porturi RS232. Din motive de securitate, versiunile moderne de Windows pot plasa aceste fișiere necesare într-un folder diferit, unde aplicația nu le poate găsi, sau pur și simplu nu le instalează deloc. Dacă Windows sau aplicația nu poate găsi sau deschide unul dintre aceste fișiere auxiliare la pornirea programului, aceasta se blochează imediat cu eroarea 339 sau 429.
Cauza: Acest lucru se întâmplă de obicei atunci când rulați software legacy pe versiuni moderne de Windows, după o actualizare majoră Windows sau dacă programul original de instalare nu a avut privilegii de administrator în timpul configurării pentru a-și înregistra fișierele.
Soluția: Rezolvarea acestor erori pe software legacy necesită adesea deschiderea unei linii de comandă cu drepturi de administrator și înregistrarea manuală a fișierelor lipsă folosind utilitarele de sistem Windows. Uneori, aplicația poate fi instalată și rulată ca administrator („Run As Administrator”), o practică care, în ziua de azi, ar trebui evitată dacă este posibil.
Opțiuni EasyDNC pentru ateliere și administratori IT
- EasyDNC 4.7: O aplicație legacy pe 32 de biți pentru versiuni mai vechi de Windows. Aceasta funcționează încă pe versiunile noi de Windows pe 64 de biți, iar mulți operatori CNC preferă în continuare acea versiune, deși pare puțin învechită după standardele actuale și nu este pe deplin compatibilă cu UAC.
- EasyDNC v5 (RemoDNC): O aplicație modernă de tip „AnyCPU” care vizează framework-urile .NET moderne, deci nu are dependențe. Aceasta se instalează și rulează pe Windows XP SP3 sau versiuni ulterioare. Pe un computer pe 64 de biți, rulează în mod nativ pe 64 de biți și este complet conștientă de UAC-ul Windows.
Detalii tehnice: De ce eșuează crearea componentei ActiveX/COM
Pentru administratorii IT și dezvoltatorii software, erorile Runtime 339 și 429 provin din eșecuri de înregistrare COM atunci când o aplicație încearcă instanțierea obiectelor:
- Comenzi COM/ActiveX neînregistrate: Dacă un program de configurare a fost rulat fără drepturi de administrator, Controlul Contului Utilizator (UAC) din Windows blochează silențios înregistrarea Class ID-ului (
CLSID) înHKEY_CLASSES_ROOT. - Redirecționarea subsistemului pe 64 de biți: Pe versiunile de Windows pe 64 de biți, comenzile ActiveX pe 32 de biți trebuie să rezide în și să fie înregistrate prin subsistemul pe 32 de biți folosind
C:\Windows\SysWOW64\regsvr32.exe. Dacă sunt înregistrate incorect sau plasate doar înSystem32, fișierele binare legacy pe 32 de biți nu pot localiza sau instanția obiectul. - Lanțuri de dependență întrerupte: Chiar dacă fișierul principal
.ocxeste prezent, eroarea 339 sau 429 va fi declanșată dacă o bibliotecă de legături dinamice secundară (cum ar fi un runtime DLL Visual C++ mai vechi) lipsește din calea sistemului (system path).