1c înregistrare com componente

Acest lucru duce la unele dificultăți. De exemplu, când încercați să încheiați o sesiune suspendată din următorul formular:

Acest lucru nu se poate face folosind o „conexiune COM la agentul server”, iar operația va eșua cu o eroare.

Pentru a crea manual o conexiune COM pentru o versiune pe 32 de biți a platformei 1C care rulează pe o versiune pe 64 de biți sistem de operare, trebuie să parcurgeți următorii pași.

1. Este necesar să înregistrați o bibliotecă pe 32 de biți în sistem comcntr.dll. Pentru a face acest lucru, deschideți linia de comandă cmd.exe pe server ca administrator și rulați următoarele comenzi:

C:\Utilizatori\admin>cd C:\Program Files (x86)\1cv8\8.3.6.2390\bin C:\Program Files (x86)\1cv8\8.3.6.2390\bin>regsvr32 comcntr.dll

În fereastra care apare cu un mesaj despre înregistrarea cu succes a bibliotecii, faceți clic pe „OK”:

Pliant coșul de gunoi trebuie să cauți calea unde l-ai instalat versiunea curentă Platforme 1C. La momentul scrierii acestui articol, numărul acestuia 8.3.6.2390 .

2. Lansați consola „Servicii componente”: Start -> Instrumente administrative -> Servicii componente. Extindeți ramura „Servicii componente”. Apelați meniul făcând clic tasta dreapta mouse-ul peste ramura „COM + Aplicații” și selectați Nou -> Aplicație:

3. Veți vedea fereastra de bun venit a „COM + Application Installation Wizard”, în care trebuie să faceți clic pe „Next”:

4. În fereastra următoare, faceți clic pe „Creați o nouă aplicație”:

5. Introduceți numele dorit pentru noua aplicație. Exemplul folosește V83_ComConnector, marcați metoda de activare ca „ Aplicație server” și faceți clic pe următorul:

6. În fereastra următoare, selectați contul pe care agentul serverului 1C îl folosește la pornire. În exemplu aceasta este cont administrator local server. Introduceți perechea nume de utilizator/parolă și faceți clic pe „Următorul”:

7.

8. Pe pasul următor, trebuie să adăugați (dacă are sens) un utilizator în numele căruia pornește agentul server 1C și, în consecință, al cărui cont va fi folosit pentru a certifica funcționarea noii noastre aplicații COM+. În fereastră acest exemplu Este specificat doar administratorul de domeniu, în numele căruia este lansat „COM + Application Installation Wizard”, faceți clic pe butonul „Add”:

9. În fereastra următoare, introduceți numele contului sub care rulează agentul serverului 1C și faceți clic pe „OK”:

10. Revenind la „Wizard...”, asigurați-vă că a fost adăugat contul pe care îl căutați și faceți clic pe „Next”:

11. Închideți „Asistentul de instalare a aplicației COM+” făcând clic pe „Terminare”:

12. Ne-am întors la fereastra consolei Servicii componente. Asigurați-vă că este creată o aplicație COM+ cu numele dvs. (V83_ComConnector în exemplu):

13. Extindeți arborele aplicației create și, făcând clic dreapta pe meniul din ramura „Componente”, creați o nouă componentă Nou -> Componentă:

14. Veți vedea fereastra de bun venit a „COM + Component Installation Wizard”, în care trebuie să faceți clic pe „Next”:

15. În fereastra următoare, faceți clic pe „Instalare componente noi”:

16. Prin folosirea Windows Explorer selectați biblioteca comcntr.dll, situat de-a lungul căii C:\Program Files (x86)\1cv8\8.3.6.2390\bin, pe care am înregistrat-o în sistem la primul pas. Asigurați-vă că calea către această bibliotecă se potrivește cu versiunea platformei dvs. În exemplu aceasta este 8.3.6.2390 . Și faceți clic pe „Deschidere”:

17. În următoarea fereastră „Wizards...”, faceți clic pe „Next”:

18. Închideți „COM+ Component Installation Wizard” făcând clic pe „Finish”:

19. Veți reveni la fereastra consolei Servicii componente. Asigurați-vă că noastre Aplicația COM+ a fost creată o nouă componentă:

20. Numiți proprietățile sale:

21. Și în fila „Securitate” din caseta „Roluri setate în mod explicit pentru obiectele selectate:”, marcați cu mouse-ul CreatorOwnerși faceți clic pe „OK”:

22. Revenind la consola Component Services, închideți-o și reporniți serverul.

După efectuarea acestor pași, terminarea sesiunilor „blocate” în versiunea 1C 8.3 a avut loc fără probleme. Singurul inconvenient este că acum după fiecare actualizare a platformei 1C la o versiune nouă, această operațiune trebuie efectuată.

La un moment dat, am întâlnit problema creării unei conexiuni COM pe partea de server. Problema este dificil de diagnosticat deoarece... codul care funcționează perfect sub client refuză să funcționeze pe server, de exemplu, dacă codul îndeplinește o sarcină de rutină.

Metoda propusă mai jos vă permite să scăpați de problema descrisă. Din păcate, după reinstalarea platformei, totul revine la normal și procedura trebuie repetată.

Actualizare. Adăugare: dacă serverul Windows pe 64 de biți are 1C Enterprise Server pe 64 de biți (în distribuția windows64.rar),
atunci nu va fi o astfel de problemă. Programul de instalare vă permite să instalați un conector COM fără a instala nordul în sine. Acest lucru este util atunci când aplicația este implementată pe platforma 8.3 și este necesară o conexiune COM la bazele de date pe 8.2.

Multumesc pentru adaugarebrix8x.

Este dat un algoritm pentru configurarea sistemului, cu o captură de ecran pentru fiecare acțiune.

2. Înregistrarea componentelor comcntr.dll

5. Pornirea serverului 1C. (Neaparat:)

Apel la consola


Înregistrați componenta. Componenta lipsește dacă este instalat doar serverul 1C. Din anumite motive, 1C îl publică doar ca parte a clientului.


Să începem serviciul de componente. Descris pentru Windows Server 2008 R2 Standard.








În fir Adăugați componente componentă nouă comcntr.dll






IMPORTANT!!! După instalare, trebuie să modificați puțin proprietățile. Această subtilitate nu este descrisă nicăieri, fără ea nu ar funcționa pentru mine!

Repornire server fizic

Pentru a accesa baza de informatii din program extern Este utilizat obiectul COM COMConnector. În funcție de versiunea platformei, se utilizează V82.COMConnector sau V83.COMConnector. La instalarea platformei 1C, clasa COMConnector este înregistrată automat în sistemul de operare. Dacă din anumite motive înregistrarea eșuează, o puteți înregistra manual.

Un exemplu de lucru cu o bază de date 1C printr-o conexiune COM poate fi găsit în.
Dacă COMConnector nu este înregistrat în Windows, atunci când crearea de software obiect va apărea o eroare:
Eroare la apelarea constructorului (COMObject): -2147221164(0x80040154): Clasa nu este înregistrată.

Înregistrarea se poate face folosind linie de comandă. Pentru a deschide linia de comandă în Windows 7 sau Windows 10, trebuie să tastați cmd în bara de căutare din meniul START. Pentru Windows 8, în „Fereastra Start”, tastați cmd în căutare. Rulați cmd.exe cu drepturi de administrator.

Sintaxa liniei de comandă Windows

cd c:\fișiere de program- în directorul de fișiere de program
CD\- la rădăcina discului
Cu:- a conduce c
CD..- cu un nivel mai sus


Windows (x64)

Pentru a înregistra ComConnector într-un sistem de operare Windows pe 64 de biți, efectuați
echipă: C:\Windows\SysWOW64\

c:\Windows\System32>
c:\Windows\System32>cd c:\Windows\SysWOW64
c:\Windows\SysWOW64>
c:\Windows\SysWOW64>regsvr32 "c:\fișiere de program (x86)\1cv8\8.3.9.2233\bin\comcntr.dll"
...
Dezinstalare
c:\Windows\SysWOW64>

Windows (x32)

Pentru operare pe 32 de biți sisteme Windows funcţionare
echipă: C:\Windows\System32\regsvr32 „C:\Program Files (x86)\1cv8\8.3.9.2233\bin\comcntr.dll”

c:\Windows\System32>
c:\Windows\System32>regsvr32 „c:\fișiere de program (x86)\1cv8\8.3.9.2233\bin\comcntr.dll”
...
Dezinstalare
c:\Windows\System32>regsvr32 "c:\fișiere de program (x86)\1cv8\8.3.9.2233\bin\comcntr.dll" /u

După executarea cu succes, va apărea o notificare:

Updater-1s. Rezolvarea problemelor cu biblioteca com pentru conexiunea externă la baza de date.

2018-10-05T16:32:35+00:00

În activitatea sa, Updater-1c folosește biblioteca com de la 1c pentru conexiunea externă la bazele de date.

În cele mai multe cazuri, nu sunt observate probleme cu această bibliotecă - actualizatorul însuși înregistrează și folosește automat biblioteca versiunea cerută 1c, dar ocazional apar cazuri (în principal pe sistemele de operare server) când este necesar „dansul cu tamburin”.

Cum să înțelegem că avem probleme cu COM

Pentru a face acest lucru, apăsați butonul „Verificați setările” în timp ce apăsați tasta „Shift” de pe tastatură:

În condiții normale munca COM raportul va fi cam asa:

Dacă există probleme cu COM, aceasta sau o eroare similară va apărea:

El poate scrie și ceva de genul „ Nu s-a putut crea conexiune software la 1C".

Da, judecând după test, avem probleme cu COM

În primul rând, despre ce fel de bibliotecă vorbim? Această bibliotecă comcntr.dll, care se află în folderul bin platformă specifică 1C:

Această bibliotecă este instalată și înregistrată automat în sistem atunci când platforma este instalată.

În plus, actualizatorul, înainte de a se conecta la baza de date prin îmbinare exterioarăÎn plus, înregistrează biblioteca din versiunea necesară a platformei în sistem folosind comanda:

regsvr32. exe /n/i:utilizator

Deci ce putem face?

Pasul #0

În primul rând, ne asigurăm că avem cu adevărat versiunea profesională a platformei, pentru că pt versiunea de bază platformă, conexiunile externe la bazele de date nu ar trebui să funcționeze (aceasta este o limitare a platformei).

Pentru a înțelege ce platformă avem (de bază sau profesională), să o rulăm pe aceasta.

Dacă licența pentru platformă nu este profesională, ci de bază, atunci toți ceilalți pași nu au sens. Conexiune externă nu va funcționa cu bazele de date (din cauza limitărilor platformei). Nu mai rămâne nimic decât să configurați bazele de date.

Pasul #1

Dacă aveți UAC activat, puteți realiza acest lucru făcând clic dreapta pe comanda rapidă de actualizare și selectând opțiunea „Run as administrator”.

Apoi, selectați baza de date și faceți clic pe butonul „Verificați setările”. Daca eroarea dispare si nu se mai reproduce nici cand rulezi updaterul normal (fara drepturi de administrator), felicitari, problema este rezolvata. Dacă nu, mergi mai departe.

Pasul #2

Într-o versiune pe 32 de biți a sistemului de operare, încercăm să executăm comanda

regsvr32/n/i:utilizator „calea către folderul bin\comcntr.dll”

Pe o versiune de sistem de operare pe 64 de biți comanda ar fi cam așa:

C:\Windows\SysWOW64\regsvr32 /n/i:utilizator „calea către folderul bin\comcntr.dll”

Rulăm aceste comenzi de la nume de utilizator cu drepturi de administrator. Și cu UAC activat, lansați cmd prin „Run ca administrator” sau prin aceeași lansare a fișierului batch scris.

Dacă comanda de înregistrare nu a ajutat, atunci trebuie mai întâi să eliminați înregistrarea bibliotecii comcntr.dll rulând aceeași comandă care apelează regsvr32 cu comutatorul /u

Dacă acest lucru nu ajută, încercați să reinstalați platforma 1C în modul Fix și apoi înregistrați biblioteca așa cum este scris mai sus.

Pasul #3

Se pare că actualizatorul nu poate înregistra componenta COM din cauza setărilor de securitate de pe serverul dvs.
În acest caz:

  1. Accesați Panoul de control - Administrare - Servicii componente.
  2. Să mergem la ramura Computers - My Computer - COM+ Applications.
  3. ÎN meniul contextual selectați Creare - Aplicație. Se deschide Expertul de instalare a aplicației COM+.
  4. Faceți clic pe „Următorul”.
  5. Selectați „Creați o nouă aplicație”.
  6. Introduceți numele „V83COMConnector”. Setați comutatorul „Aplicație server”. Faceți clic pe „Următorul”.
  7. În pasul următor instalăm " Utilizator curent". Faceți clic pe „Următorul”.
  8. Faceți clic pe „Terminare”.
  9. În ramura V83COMConnector care apare, mergeți la subramura Componente.
  10. În meniul contextual, selectați Nou - Componentă. Se deschide Expertul de instalare a componentelor COM+.
  11. Faceți clic pe „Următorul”.
  12. Selectați „Instalați componente noi”.
  13. Selectați un fișier<каталог 1С>\bin\comcntr.dll.
  14. Faceți clic pe „Next” - „Finish”.
  15. Să trecem la ramura V83COMConnector.
  16. Selectați „Proprietăți” din meniul contextual. În fereastra care se deschide, accesați fila „Securitate”.
  17. Debifați „ Verificare forțată acces pentru aplicații.” Bifați caseta de selectare „Aplicați politica de restricții software”. Setați nivelul de restricție la „Nelimitat”.
  18. Faceți clic pe „OK”.

După aceasta, actualizatorul ar trebui să poată înregistra independent componente ale tuturor versiunilor de platformă, și nu doar pe cea pe care am specificat-o în componentă.

Pasul #4

Se întâmplă că doar reinstalarea platformei ajută (în acest caz, componenta este înregistrată corect).

Pasul #5

Dacă problema a început să apară imediat după actualizarea platformei 1c, atunci cel mai probabil noua versiune platformei 1c îi lipsește un pachet de service sau o actualizare pentru sistemul dvs. de operare. Prin urmare, dacă este posibil, le instalăm pe toate dacă nu, acționăm selectiv în conformitate cu acesta.