Autor Wątek: Łączenie do bazy danych przez aplikację konsolową  (Przeczytany 2551 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Skeetch

  • Nowy użytkownik
  • *
  • Wiadomości: 3
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.73
Łączenie do bazy danych przez aplikację konsolową
« dnia: Grudzień 14, 2022, 14:11:30 »
Cześć

Jest to moja pierwsza styczność z subiektem. Dostałem starą konsolową aplikację w spadku po kimś kto ostatni raz dotykał to w 2016 roku. Chciałem ją zdebugować u siebie na komputerze, ale w momencie wywoływania konstruktora leci wyjątek
System.Runtime.InteropServices.COMException: 'Pobranie fabryki klasy COM dla składnika o identyfikatorze CLSID {F8605331-7454-4A45-98DB-A69EBB3D2947} nie powiodło się z powodu następującego błędu: 80040154 Klasa niezarejestrowana. (Wyjątek od HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).'Jest w ogóle taka możliwość aby debugować aplikację na moim komputerze tak aby połączyła się do bazy znajdującej się na innym serwerze? Coś muszę doinstalować?

Mam jeszcze jedno pytanie. Mianowicie, czy są jakieś ograniczenia co do ilości jednocześnie zalogowanych użytkowników przez takie zewnętrzne aplikacje? Podobno wcześniej mogło być kilku zalogowanych użytkowników jednocześnie, a po aktualizacji do wersji 1.73 logowanie więcej niż jednego użytkownika kończy się błędem.

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17061
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Łączenie do bazy danych przez aplikację konsolową
« Odpowiedź #1 dnia: Grudzień 14, 2022, 14:19:44 »
Jest w ogóle taka możliwość aby debugować aplikację na moim komputerze tak aby połączyła się do bazy znajdującej się na innym serwerze?

No tak, przecież to podstawowe założenie programu, aby mógł pracować wielostanowiskowo, lokalizacja danych nie ma znaczenia.

Coś muszę doinstalować?

Od strony programów InsERT powinna wystarczyć instalacja pakietu GT, od strony środowiska programistycznego - nie podałeś żadnych informacji, zakładam, że korzystać z narzędzia, którym umiesz się posługiwać.

Mam jeszcze jedno pytanie. Mianowicie, czy są jakieś ograniczenia co do ilości jednocześnie zalogowanych użytkowników przez takie zewnętrzne aplikacje?

Oczywiście, to podstawy licencjonowania, rozwiązania takie wykorzystują licencję stanowiskową programu i licencję Sfery (dokładnie to Sfera pobiera również licencję stanowiskową).

Podobno wcześniej mogło być kilku zalogowanych użytkowników jednocześnie, a po aktualizacji do wersji 1.73 logowanie więcej niż jednego użytkownika kończy się błędem.

Zakładam, że przyczyna nie leży po stronie programów InsERT tylko po stronie rozwiązania dodatkowego, jego samego (ujawnił się jakiś błąd) lub sposobu jego wykorzystania.
Daniel, Białystok.

Offline Skeetch

  • Nowy użytkownik
  • *
  • Wiadomości: 3
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.73
Łączenie do bazy danych przez aplikację konsolową
« Odpowiedź #2 dnia: Styczeń 12, 2023, 10:09:36 »
Udało mi się zdebugować aplikację i dzięki temu wiem, w którym miejscu leci błąd, ale nie za bardzo wiem dlaczego. Przy próbie zalogowania drugiego użytkownika wywołanie metody Uruchom zwraca null.

Wygląda to tak, że użytkownik 1 łączy się do serwera poprzez telnet i uruchamia tą aplikację konsolową. Wszystko jest ok.
Użytkownik 2 w tym samym czasie też się łączy telnetem i uruchamia aplikację. W tym momencie metoda Uruchom zwraca null i subiekt się nie uruchamia.

Gdy tą aplikację konsolową uruchamiam normalnie jako exe to wszystko jest ok i mogę się logować na wielu użytkowników jednocześnie. Problem jest tylko w przypadku połączenia przez telnet. Ktoś się wcześniej z czymś takim spotkał?

Wysłane z mojego Pixel 7 przy użyciu Tapatalka


Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17061
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Łączenie do bazy danych przez aplikację konsolową
« Odpowiedź #3 dnia: Styczeń 12, 2023, 10:15:41 »
Osobiście nic nie rozumiem z tego opisu.
Daniel, Białystok.

Offline Skeetch

  • Nowy użytkownik
  • *
  • Wiadomości: 3
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.73
Łączenie do bazy danych przez aplikację konsolową
« Odpowiedź #4 dnia: Styczeń 12, 2023, 10:22:44 »
Użytkownicy korzystają z tej aplikacji na terminalach do skanowania kodów kreskowych. Terminale łączą się za pośrednictwem telnetu do serwera, na którym uruchamiają aplikację konsolową i ta aplikacja jest przekazywana na ekran terminala. No i tak jak pisałem wcześniej - 1 użytkownik loguje się bez problemu, a w przypadku drugiego aplikacja nie jest w stanie uruchomić subiekta.

Jeśli pominę terminale i uruchomię aplikacje z poziomu komputera to wszystko jest ok i mogę mieć kilka sesji otwartych jednocześnie

Wysłane z mojego Pixel 7 przy użyciu Tapatalka


Forum Użytkownikow Subiekt GT

Łączenie do bazy danych przez aplikację konsolową
« Odpowiedź #4 dnia: Styczeń 12, 2023, 10:22:44 »