W dokumencie tym zawarto
najświeższe informacje dotyczące programu Microsoft®
Transaction Server (MTS). Więcej informacji można znaleźć w
następujących tematach:
Instalacja programu Microsoft Transaction
Server
Wprowadzenie do programu Microsoft
Transaction Server
Zapraszamy do pracy w programie Microsoft
Transaction Server
Informacje
z ostatniej chwili i znane ograniczenia
W poniższych paragrafach zawarto informacje z ostatniej chwili, nie uwzględnione w zwykłej dokumentacji, a także znane błędy i ograniczenia programu.
Podczas instalowania programu MTS należy ustawić tożsamość pakietu systemowego przed utworzeniem jakichkolwiek nowych pakietów:
Upewnij się, że konto użytkownika dla pakietu systemowego i innych pakietów programu MTS ma prawo użytkownika systemu Windows NT "Logowanie w trybie usług". Można to sprawdzić używając Menedżera użytkowników systemu Windows NT:
Aplikacje programu Microsoft Transaction Server mogą uzyskać dostęp do bazy danych programu Oracle znajdującej się w tym samym systemie, co program Microsoft Transaction Server. Należy się jednak upewnić, że zostało zainstalowane całe oprogramowanie opisane w pliku Pomocy programu Microsoft Transaction Server w paragrafie "Konfigurowanie programu Microsoft Transaction Server na dostęp do programu Oracle".
Aplikacje programu Microsoft Transaction Server mogą również uzyskać dostęp do bazy danych programu Oracle znajdującej się w zdalnym systemie Windows NT lub UNIX. Trzeba jednak zainstalować właściwe wersje oprogramowania klienta programu Oracle w systemie zawierającym składniki programu Microsoft Transaction Server. Wersje oprogramowania klienta programu Oracle muszą być takie same lub nowsze od poniższych:
Składnik | Wersja |
Oracle SQL*Net | 2.3.3 |
Oracle OCIW32.DLL | 1, 0, 0, 5 |
Oracle SQLLIB18.DLL | 1.8.3.0.1 |
Oracle XA73.LIB | 7.3.3.2.0 |
Baza danych programu Oracle ma zintegrowane zabezpieczenia, które używają funkcji uwierzytelniania systemu Windows NT do sprawdzania tożsamości użytkowników bazy danych. Umożliwia to użytkownikowi zalogowanie się do programu Oracle bez dodatkowego podawania nazwy konta użytkownika i hasła. Użytkownicy mogą mieć taką samą nazwę konta i hasło dla systemu Windows NT i bazy danych Oracle.
Jeśli dla składników programu MTS zawsze wymagane jest podawanie nazwy konta użytkownika i hasła przy łączeniu z bazami danych programu Oracle, to znaczy, że zintegrowane zabezpieczenia nie są używane. Jest tak niezależnie od tego, czy aplikacje określają nazwę konta użytkownika i hasło bezpośrednio, czy pośrednio poprzez ODBC DSN. W obu przypadkach zintegrowane zabezpieczenia nie są używane i można pominąć ten krok.
Jeśli zintegrowane zabezpieczenia są używane, to aby połączyć się z bazą danych programu Oracle, trzeba skonfigurować program MS DTC na uruchamianie z uwierzytelnioną nazwą użytkownika i hasłem. Jest to wymagane, ponieważ podczas odtwarzania bazy danych, program MS DTC otwiera bazę danych Oracle, aby raportować wynik transakcji wątpliwych. Odpowiednie informacje można znaleźć w paragrafie "Zmiana konta użytkownika, pod którym uruchamiany jest program Microsoft Distributed Transaction Coordinator" poniżej. Użyj narzędzi zabezpieczeń programu Oracle, aby zapewnić, że określony użytkownik jest uprawniony do otwarcia bazy danych programu Oracle.
Więcej informacji dotyczących zintegrowanych zabezpieczeń systemu Windows NT dla programu Oracle można znaleźć w dokumentacji programu Oracle.
Jeśli program MicrosoftO Distributed Transaction Coordinator (DTC) zostanie skonfigurowany na uruchamianie pod innym kontem niż konto systemowe, trzeba określić konto należące do grupy Administratorzy. Jeśli nie, uruchomienie programu MS DTC może się nie powieść a w dzienniku zdarzeń systemu Windows NT pojawi się następujący komunikat.
XATM log object failed to set log encryption key
Identyfikator ID użytkownika dla programu MS DTC można skonfigurować następująco:
Aby utworzyć więcej niż kilkadziesiąt połączeń z bazą danych programu Oracle, trzeba skonfigurować serwer Oracle na obsługę dodatkowych połączeń z bazą danych. Jeśli tego nie zrobisz, mogą pojawić się następujące problemy:
Jeśli występuje którykolwiek z tych problemów, należy rozważyć zwiększenie następujących parametrów konfiguracji serwera Oracle:
Wartość parametru Sessions
Typowa wartość parametru Sessions powinna być trzy razy większa niż spodziewana, całkowita liczba dokonywanych przez aplikację połączeń z bazą danych. Wynika to z tego, że system Oracle zazwyczaj otwiera więcej niż jedną sesję (często trzy) dla każdego transakcyjnego połączenia z bazą danych otwieranego przez aplikację.
Wartość parametru Queuesize
Proces odbiornika Oracle czasem opóźnia się i odrzuca żądania otwarcia bazy danych, jeśli wartość jego parametru Queuesize jest nieodpowiednia. Żądania połączeń, które przychodzą zbyt szybko, aby odbiornik Oracle mógł je obsłużyć, i które nie mieszczą się w kolejce odbiornika (której rozmiar określa parametr QUEUESIZE w plikach LISTENER.ORA, TNSNET.ORA i NAMES.ORA), są zwracane z błędem ECONNREFUSED. Klient, który napotka ten błąd zwraca komunikat o błędzie "ORA-12541: No Listener", a w pliku dziennika klienta lub pliku śledzenia (.TRC) pojawia się komunikat ECONREFUSED.
Aby rozwiązać ten problem:
Na przykład, aby ustawić 100 żądań dla kolejki, zmień plik LISTENER.ORA następująco:
QUEUESIZE = 100
Pakiety programu MTS w klastrach MSCS nie mogą uzyskać dostępu do baz danych zgodnych z XA (takich jak Oracle).
Jeśli aplikacja przeprowadza transakcje rozciągnięte na dwa lub więcej komputerów, trzeba upewnić się, że programy MS DTC na tych komputerach są skonfigurowane na komunikowanie się ze sobą. Program MS DTC jest domyślnie uruchamiany z tożsamością konta systemowego. Program MS DTC na jednym komputerze może komunikować się z programem MS DTC na innym komputerze, tylko wtedy, gdy konta Gość na obu komputerach są włączone. Jeśli konto Gość zostanie wyłączone na którymś z komputerów lub w domenie systemu Windows NT, do której one należą, program MS DTC trzeba skonfigurować na uruchamianie pod jakąś inną nazwą użytkownika, który może komunikować się z danym komputerem zdalnym. Odpowiednie informacje można znaleźć w paragrafie "Zmiana konta użytkownika, pod którym uruchamiany jest program Microsoft Distributed Transaction Coordinator" powyżej.
Klienci używający programu MS DTC w środowisku MSCS powinni zainstalować program Windows NT QFE Q116844. Program ten usuwa problem związany z wywołaniem procedury zdalnej (RPC), który może spowodować zawieszenie się klienta MS DTC podczas próby połączenia z programem MS DTC na serwerze sklastrowanym.
Dla serwerów sklastrowanych trzeba za pomocą programu MTS Explorer ustawić właściwość Nazwa serwera zdalnego na nazwę serwera wirtualnego. Umożliwi to klientom zdalnym uzyskanie dostępu do składników programu MTS w obrębie klastra i, w przypadku niepowodzenia, zapewnia, że klienci odwołują się do klastra, a nie do określonego węzła należącego do klastra.
Dla pakietów programu MTS w klastrach MSCS konto użytkownika skojarzone z tożsamością pakietu musi być kontem administratora systemu lub musi mieć uprawnienie "Pełna kontrola" dla klastra (zgodnie z ustawieniem w cluadmin). Jeśli pakiet nie będzie uruchamiany z tożsamością administratora systemu, program MTS nie będzie w stanie połączyć się programem MS DTC.
Program MTS wymaga, aby ścieżka do katalogu Windows NT była taka sama na wszystkich węzłach klastra MSCS (na przykład c:\winnt).
Przed uruchomieniem Instalatora programu MTS trzeba zamknąć wszystkie zasoby klastra MSCS (takie jak SQL Server), na które wpływa Instalator programu MTS.
Program SQL Server 6.5 można zainstalować po zainstalowaniu programu MTS. Zaleca się, aby instalować program SQL Server 6.5 przed zainstalowaniem programu MTS. Jeśli program SQL Server 6.5 jest instalowany po zainstalowaniu programu MTS, Instalator programu MTS próbuje upewnić się, czy program MS DTC działa poprawnie.
Dla wygody, do programu MTS został dołączony skrypt INSTCAT.SQL. Plik ten aktualizuje skatalogowane procedury dla sterownika SQL Server ODBC. Jeśli skrypt ten nie został jeszcze uruchomiony, należy go uruchomić używając narzędzia isql programu SQL Server.
Funkcja uwierzytelniania nie jest włączona domyślnie.
Nie można ustawić tożsamości pakietu na grupę.
Podczas ustawiania tożsamości pakietu program MTS sprawdza wprowadzone hasło. Jeśli jednak hasło dla konta zostanie zmienione bez zaktualizowania tego hasła w programie MTS Explorer, pakiet nie może zostać uruchomiony.
Plik dziennika programu MS DTC może obecnie znajdować się w katalogu skompresowanym. Jednak, aby zapewnić optymalną wydajność, nie należy kompresować pliku dziennika programu Microsoft DTC ani przechowywać go w katalogu skompresowanym. Program MS DTC musi dekompresować plik dziennika przed jego użyciem.
Dokumentacja dotycząca uruchamiania i zatrzymywania programu MS DTC w systemie MicrosoftO WindowsO 95 powinna wyglądać następująco:
Domyślnie program Microsoft
Distributed Transaction Coordinator (MS DTC) jest skonfigurowany
na automatyczne uruchamianie, gdy uruchamiany jest system Windows
NT lub Windows 95. Aby zapobiec automatycznemu uruchamianiu
programu MS DTC podczas uruchamiania systemu Windows 95, należy
użyć edytora rejestru, aby znaleźć klucz HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices,
a następnie usunąć wartość MSDTC. Aby ponownie
włączyć automatyczne uruchamianie programu MS DTC, należy
użyć edytora rejestru do utworzenia wartości MSDTC i
ustawić ją na ciąg znaków "msdtcw -start"
w kluczu HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices.
Należy zauważyć, że nazwą
usługi jest "msdtcw"
, a nie "msdtc"
,
oraz że przed myślnikiem występuje spacja.
Nie można zdalnie administrować instalacją programu MTS 2.0 z komputera, na którym uruchomiona jest poprzednia wersja programu MTS. Taka próba spowoduje zwrócenie kodu błędu lub niespodziewane przerwanie programu MTS Explorer.
Zamykanie pojedynczych pakietów nie jest obsługiwane podczas zdalnego administrowania komputerem programu MTS 1.x.
Po zainstalowaniu programu MTS 2.0 może pojawiać się błąd naruszenia praw dostępu podczas zamykania programu MicrosoftO Visual BasicO 5.0. Jest to znany błąd programu Visual Basic 5.0, który można usunąć instalując program Visual StudioÔ Service Pack 2 z witryny http://www.microsoft.com/vstudio. Więcej informacji dotyczących tego problemu można znaleźć w artykule Q167213 w bazie danych Knowledge Base.
Znany jest problem, który występuje, gdy proces serwera MTS zostaje niespodziewanie przerwany (z powodu failfast, błędu potwierdzenia lub naruszenia praw dostępu); wtedy kolejne próby ponownego uruchomienia aplikacji powodują powstanie wielu procesów MTS. (Poprawnym zachowaniem jest tworzenie tylko jednego procesu MTS na pakiet.) W przypadku niespodziewanego przerwania procesu serwera, trzeba dokonać ponownego rozruchu komputera z systemem Windows 95.
Znany jest problem, który może powodować zakleszczenia podczas używania więcej niż około 40 połączeń nazwanych potoków między klientem systemu Windows 95 a programem MS Distributed Transaction Coordinator (DTC). Aby rozwiązać ten problem, należy zmienić protokół między sterownikiem ODBC a programem SQL Server na TCP/IP.
Model COM umożliwia emulowanie jednego serwera przez drugi przy użyciu kluczy rejestru TreatAs i AutoTreatAs. Przypuśćmy, że klient tworzy składnik dla danego identyfikatora CLSID używając metody CoCreateInstance. Jeśli klucz TreatAs lub AutoTreatAs dla tego identyfikatora CLSID znajduje się w rejestrze, model COM utworzy składnik wskazywany przez ten klucz. W efekcie żądanie klienta jest routowane na serwer emulowany. (Ten sam routing jest możliwy przy użyciu identyfikatora ProgID, jeśli klient odwołuje się do serwera przez identyfikator ProgID, a nie przez CLSID.)
Składniki emulowane przy użyciu klucza TreatAs lub AutoTreatAs nie są prawidłowymi składnikami MTS i nie mogą być importowane. Jeśli emulacja ma być dodana po importowaniu składnika, składnik ten musi zostać usunięty z katalogu MTS, a następnie zastąpiony przez składnik emulujący.
W obrębie procesu serwera obiekty należące do tej samej aktywności muszą być zarejestrowane ze zgodnymi modelami wątkowymi. Prawidłowe są następujące kombinacje:
Oznacza to, że jednowątkowe składniki MTS nie mogą zostać utworzone przez środowisko Active Server Page uruchomione wewnątrzprocesowo z programem IIS lub wewnątrzprocesowo z aplikacją IIS używającą izolacji procesu.
Nie zaleca się tworzenia lokalnych serwerów nie-MTS przy użyciu metody CreateInstance Takie serwery nie są dobrze skalowalne i mogą powodować powstawanie dodatkowych instancji serwerów nie zamykanych przez program MTS. Aby utworzyć lokalny serwer nie-MTS, należy użyć metody CoCreateInstance.
Nie należy używać surogatów COM w programie MTS. Zamiast tego należy pobierać serwery wewnątrzprocesowe do procesów serwera MTS.
Oparta na rolach kontrola dostępu do pakietów w programie MTS nie działa poprawnie, gdy pakiety są front-ended przez mutlipleksery, które uosabiają wielu klientów (na przykład program Internet Information Server). Pakiety programu MTS używane w tych środowiskach powinny mieć wyłączone zabezpieczenia.
Ten problem można rozwiązać przez zainstalowanie programu Windows NT QFE Q147222. Po jego zainstalowaniu zabezpieczenia oparte na rolach działają poprawnie z programem IIS.
Podczas tworzenia bezpiecznych aplikacji IIS, które używają izolacji procesu, program IIS tworzy pakiet MTS, który jest ustawiony na uruchamianie jako IWAM_<nazwa komputera>. Aby zmienić tożsamość tego pakietu, należy również dodać nową tożsamość pakietu do grupy "MTS Trusted Impersonators". W przeciwnym razie zabezpieczenia nie będą działały poprawnie w innych zewnątrzprocesowych składnikach MTS wywoływanych przez pakiet, a klient wywołujący będzie się pojawiał jako IWAM_<nazwa komputera>, a nie jako faktyczny klient programu IIS.
Obiekty ADO usuwają wszelkie informacje, które ewentualnie mogą się znajdować w obiekcie ErrorInfo. Istnieje kod usuwający ten problem, który trzeba zaimplementować w procedurze obsługi błędów.
W języku Visual Basic kod ten wygląda następująco:
ErrorHandler: ' czyszczenie If Not adoRS Is Nothing Then Set adoRS = Nothing End If If Not adoConn Is Nothing Then Set adoConn = Nothing End If Err.Raise Err.Number, "Bank.Accout.Post", Err.Description Exit Function
W języku C++ kod ten wygląda następująco:
// // Obiekt ErrorInfo jest w tym miejscu zapisywany, // ponieważ kod czyszczący ADO mógłby go wyczyścić. // IErrorInfo * pErrorInfo = NULL; GetErrorInfo(NULL, &pErrorInfo); if (adoRsBalance) adoRsBalance->Release(); if (adoCoConnection) adoCoConnection->Release(); AtlReportError( CLSID_CAccount, pErrMsg, IID_IAccount, hr); // // ponownie umieść błąd w TLS // SetErrorInfo(NULL, pErrorInfo);
W języku J++ kod ten wygląda następująco:
if (adoRsBalance != null) { if (adoRsBalance.getState() == ObjectStateEnum.adStateOpen) adoRsBalance.Close(); ComLib.release (adoRsBalance); } if (adoConn != null) { if (adoConn.getState() == ObjectStateEnum.adStateOpen) adoConn.Close(); ComLib.release (adoConn); }
Uwaga W programie Java trzeba jawnie zamknąć zestawy rekordów i/lub połączenia, a także jawnie zwolnić obiekty ADO.
W dokumentacji podano błędną informację, że dostarczana jest wersja klienta programu Sample Bank dla środowiska Active Server Page (ASP).
W programie MTS 1.0 istniał limit 100 metod na składnik. W programie MTS 2.0 limit ten wynosi 1024 metody.
Dla składników, które używają obiektów RDO 2.0 i do których wielu klientów próbuje uzyskać dostęp współbieżnie, mogą występować naruszenia praw dostępu. Problem ten był obserwowany na serwerach z wieloma procesorami. Problem ten nie był obserwowany dla składników używających obiektów ADO.
Pliki z przykładami skryptów języka Visual Basic Scripting (VBScript) automatyzującymi administrację programem MTS, znajdują się w katalogu \Program Files\Mts\Samples, a nie w katalogu \Program Files\Mtx\Samples\WSH, jak to zostało podane w dokumentacji.
Składniki MTS nie powinny być budowane jako biblioteki MFC Extension DLL, ponieważ takie biblioteki DLL mogą być pobierane tylko przez aplikacje MFC. Składnik COM, a zatem i składnik MTS, powinien być zbudowany w taki sposób, aby mógł on być pobrany do dowolnego procesu, niezależnie od typu aplikacji, która uruchomiła proces.
Więcej informacji dotyczących bibliotek MFC Extension DLL można znaleźć w podręczniku programisty dla języka Microsoft Visual C++.
Jeśli proces programu Mtx.exe uruchomiony ze składnikami programu Visual Basic 4.0 zostanie zamknięty z powodu zbyt długiej bezczynności, występuje znany problem naruszenia praw dostępu. Obecnie nie jest znane rozwiązanie tego problemu. Prawdopodobnie problem ten pojawia się, gdy w procesie są używane więcej niż dwa składniki programu Visual Basic 4.0. Pewnym wyjściem może być ustawienie dla pakietu opcji "Pozostaw uruchomiony mimo bezczynności". Problem ten występuje tylko dla składników zbudowanych w języku Visual Basic 4.0 – nie pojawia się dla języka Visual Basic 5.0.
Jeśli składnik serwera używa obiektów RDO, nie można dopuścić, aby obiekt rdoConnection z aktywnym obiektem rdoResultset znalazł się poza zakresem, gdyż może to spowodować zakleszczenie. Aby uniknąć zakleszczenia, trzeba samodzielnie zamknąć obiekt rdoResultset lub rdoConnection Następująca procedura powoduje powstanie zakleszczenia:
Zakleszczenia można uniknąć przez samodzielne zamknięcie zestawu wyników (lub połączenia) na końcu kroku 1, co natychmiast powoduje powstanie wywołań ODBC zamykających instrukcję (i połączenie). Sedno problemu tkwi w opóźnieniu wprowadzonym przez ogłoszoną w zamkniętym oknie wiadomość żądającą zamknięć ODBC.
Przy każdej kompilacji projektu OLE DLL w języku Visual Basic 4.0, język Visual Basic ponownie tworzy wszystkie wpisy rejestru dla wszystkich składników (klas języka Visual Basic) używanych w danej bibliotece DLL. Ponadto język Visual Basic może generować nowe identyfikatory GUID (w zależności od konfiguracji projektu) służące do identyfikacji składników w bibliotece DLL. Oznacza to, że składniki MTS przestają być prawidłowo zarejestrowane w katalogu MTS.
Problem ten można rozwiązać na dwa sposoby. Po pierwsze, można użyć w programie Transaction Server Explorer przycisku Odśwież lub polecenia Odśwież wszystkie składniki z menu Narzędzia. Po użyciu tego polecenia program Microsoft Transaction Server usunie wszystkie niezgodności wpisów rejestru dla składników aktualnie znajdujących się w prawym okienku programu Explorer.
Podczas instalacji wersji Development programu Microsoft Transaction Server należy ustawić opcję VB Addin, aby włączyć funkcję, która automatycznie odświeża składniki po ich skompilowaniu. Po następnym uruchomieniu języka Visual Basic 4.0, dodatek ten zostanie automatycznie zainstalowany w środowisku Visual Basic IDE. Funkcję tę można również włączyć lub wyłączyć dla danego projektu przez zaznaczenia lub usunięcie zaznaczenia polecenia MTxServer RegRefresh | AutoRefresh after compile w menu Add-Ins w języku Visual Basic. Aby odświeżyć wszystkie składniki Microsoft Transaction Server w dowolnym momencie, można użyć polecenia MTxServer RegRefresh | Refresh all components now z menu Add-Ins.
Ważne Ten dodatek języka Visual Basic został tak zaktualizowany, aby pracował z obiema wersjami języka Visual Basic, 4.0 i 5.0. Po zainstalowaniu, automatycznie odświeża on katalog Transaction Server wprowadzając zmiany dokonane podczas każdej kompilacji. Opcja menu dodatków (Add-Ins) włączania i wyłączania automatycznego odświeżania nie jest już obsługiwana.
Użycie tego dodatku powoduje właściwe odświeżanie katalogu MTS, nawet po kompilacjach języka Visual Basic, które generują nowe identyfikatory GUID składników. Należy również zauważyć, że ustawienia Compatible OLE Server w oknie dialogowym Project Options języka Visual Basic można użyć do wyłączenia generowania nowych identyfikatorów GUID przez język Visual Basic.
Odświeżanie katalogu MTS działa pod warunkiem, że nie zmienia się identyfikatorów ProgID składników. W języku Visual Basic 4.0 identyfikator ProgID składnika jest tworzony przez następujące połączenie: nazwa projektu.nazwa klasy. Jeśli któryś z tych elementów zostanie zmieniony, trzeba będzie ponownie zainstalować składnik(i) w programie MTS Explorer.
Budowanie składnika w języku Visual Basic 4.0 bez zaznaczonej opcji Compatible OLE Server powoduje zastąpienie starych identyfikatorów CLSID i IID przy każdej kompilacji. Podczas projektowania składnika MTS wiąże się z tym kilka niedogodności, nawet przy włączonym dodatku języka Visual Basic.
Zgłaszając błąd należy podać następujące informacje:
Odpowiedzi na pytania związane z instalacją i użytkowaniem oprogramowania firmy Microsoft należy szukać przede wszystkim w:
Wszystkim legalnym, zarejestrowanym użytkownikom systemu Microsoft Windows NT Workstation i programu Personal Web Server, którzy nie mogą znaleźć rozwiązania problemu technicznego w wyżej wymienionych źródłach lub nie mają do nich dostępu, firma Microsoft umożliwia 2 bezpłatne zgłoszenia do pomocy telefonicznej.
Pomoc techniczna świadczona przez Biuro Pomocy Technicznej jest bezpłatna. Biuro Pomocy Technicznej obsługuje legalnych i zarejestrowanych użytkowników produktów firmy Microsoft. Biuro udziela porad telefonicznych pod numerem (0-22) 865 99 66 w godzinach od 9:00 do 17:00, od poniedziałku do piątku, z wyjątkiem świąt.
Biuro Pomocy Technicznej:
Po zainstalowaniu oprogramowania, należy wysłać pod wskazany adres wypełnioną kartę rejestracyjną. W ciągu ok. 2 tygodni otrzymają Państwo zwrotnie potwierdzenie rejestracji oraz stały numer klienta, na który należy się powoływać w kontaktach z Biurem Pomocy.
Aby ułatwić i przyspieszyć procedurę udzielenia pomocy, przed zadzwonieniem do Biura Pomocy Technicznej powinni Państwo przygotować następujące informacje:
Firma Microsoft zastrzega sobie możliwość wprowadzenia zmian w zasadach funkcjonowania obsługi technicznej bez uprzedniego powiadomienia. W przypadku konieczności zmiany numerów telefonów, stosowne informacje podawane będą w naszej witrynie internetowej pod adresem http://www.microsoft.com/poland/ oraz w korespondencji wysyłanej okresowo do zarejestrowanych klientów.
Firma Microsoft oferuje również programy i usługi pomocy technicznej dla firm, które wymagają więcej niż standardowej pomocy w przypadku wystąpienia problemu. Aby uzyskać aktualne informacje na ten temat, należy odwiedzić witrynę Obsługi technicznej online firmy Microsoft pod adresem http://www.microsoft.com/poland/support/ lub skontaktować się z przedstawicielstwem firmy Microsoft.
Wszelkie pytania nie związane z problemami technicznymi, w tym pytania dotyczące oferty handlowej i dostępności produktów firmy Microsoft, oraz prośby o informacje na temat poszczególnych produktów, należy kierować do Infoserwisu Microsoft lub bezpośrednio do naszych przedstawicieli handlowych. Infoserwis udziela informacji na temat przedstawicieli handlowych znajdujących się najbliżej Państwa. Telefon Infoserwisu: (0-22) 865 99 33 w godzinach od 9:00 do 17:00, od poniedziałku do piątku, z wyjątkiem świąt. Infoserwis nie udziela pomocy technicznej.
Firma Microsoft zastrzega sobie możliwość wprowadzenia zmian w zasadach funkcjonowania Infoserwisu bez uprzedniego powiadomienia. W przypadku konieczności zmiany numerów telefonów, stosowne informacje podawane będą w naszej witrynie internetowej pod adresem http://www.microsoft.com/poland/ oraz w korespondencji wysyłanej okresowo do zarejestrowanych klientów.
© 1997 Microsoft Corporation
Niniejsze materiały są dostarczane “bez zmian,” tylko dla celów informacyjnych.
Firma Microsoft ani jej dostawcy nie udzielają żadnych gwarancji, wyrażonych wprost lub domyślnie, odnośnie treści niniejszych materiałów i dokładności wszelkich zawartych w nich informacji, w tym, bez żadnych ograniczeń, domyślnych gwarancji przydatności do określonych celów. Ponieważ przepisy niektórych krajów nie dopuszczają wyłączenia gwarancji domyślnych, powyższe ograniczenie nie musi dotyczyć wszystkich użytkowników.
Firma Microsoft ani jej dostawcy nie będą w żadnym wypadku odpowiedzialni za jakiekolwiek szkody (przypadkowe, nieprzypadkowe, pośrednie, bezpośrednie i inne) oraz straty finansowe wynikające z użycia tych materiałów. Ponieważ przepisy niektórych krajów nie dopuszczają wyłączenia gwarancji domyślnych, powyższe ograniczenie nie musi dotyczyć wszystkich użytkowników. Wszelkie finansowe zobowiązania firmy Microsoft i jej dostawców wynikające w jakiś sposób z udostępnienia tych materiałów nie mogą przekroczyć ich ceny detalicznej.