CORRECTIF: « objet COM peut pas être utilisé » erreur message lorsque vous utilisez un objet COM STA qui créé à l'aide de Server.CreateObject et stockées dans l'étendue de session dans une autre page Web

Traductions disponibles Traductions disponibles
Numéro d'article: 818612 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

Vous créez un objet COM STA (single-threaded apartment à l'aide de Server.CreateObject et que puis cet objet COM STA vous les stockez dans étendue de session. Si vous utilisez cet objet STA COM à partir d'une autre page Web, vous recevez le message d'erreur suivantes :
Objet COM qui a été séparé de son RCW sous-jacent ne peut utiliser

Résolution

important Pour appliquer ce correctif, vous devez être le .NET Framework Service Pack 2 installé.

Comment faire pour obtenir le correctif logiciel

Ce problème est résolu dans juin 2003 package de correctifs ASP.NET 1.1. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
821156 INFO : ASP.NET 1.1 package global de correctifs juin 2003
Vous ne pouvez pas obtenir ce correctif individuellement. Vous devez installer le correctif cumulatif.

note Lorsque vous demandez ce correctif, vous recevez le correctif cumulatif.

La version anglaise de ce correctif dispose des attributs de fichier (ou version ultérieure) répertoriés dans le tableau suivant. Les dates et heures de ces fichiers sont exprimées en coordinated universal temps (UTC). Lorsque vous affichez les informations de fichier, il est convertie en heure locale. Pour connaître le décalage entre l'heure UTC et l'heure locale, utilisez l'onglet Fuseau horaire dans l'outil Date et heure du Panneau de configuration.
   Date         Time   Version       Size       File name
   --------------------------------------------------------------
   25-Apr-2003  03:19  1.0.3705.424    196,608  Aspnet_isapi.dll
   25-Apr-2003  03:19                  510,714  Aspnet_perf2.ini
   25-Apr-2003  03:15                    4,169  Aspnet_perf.h
   25-Apr-2003  03:19                  513,302  Aspnet_perf.ini
   25-Apr-2003  03:19  1.0.3705.424     24,576  Aspnet_regiis.exe
   25-Apr-2003  03:19  1.0.3705.424     28,672  Aspnet_wp.exe
   24-Apr-2003  15:49  1.0.3705.424     69,632  Corperfmonext.dll
   24-Apr-2003  15:47  1.0.3705.424    303,104  Mscorjit.dll
   25-Apr-2003  12:55  1.0.3705.424  1,953,792  Mscorlib.dll
   24-Apr-2003  15:48  1.0.3705.424  2,269,184  Mscorsvr.dll
   01-Aug-2002  18:38                       15  Smartnav.htm
   17-Oct-2002  14:55                    8,728  Smartnav.js
   24-Apr-2003  15:40                   10,284  Mscorlib.ldo
   24-Apr-2003  15:48  1.0.3705.424  2,269,184  Mscorwks.dll
   25-Apr-2003  12:59  1.0.3705.424  1,191,936  System.web.dll

Ce correctif est également disponible pour la version allemande de Microsoft .NET Framework 1.0. Ce correctif est également disponible pour la version française de Microsoft .NET Framework 1.0.

Si vous avez appliqué le correctif décrit dans cet article pour Microsoft ASP.NET fourni avec le .NET Framework 1.0, et si vous avez effectué une mise à niveau vers Microsoft ASP.NET est fourni avec .NET Framework 1.1, appliquez le package de correctifs dans l'article suivant de la base de connaissances Microsoft :
821156 INFO : ASP.NET 1.1 package global de correctifs juin 2003
En outre, si vous avez effectué une mise à niveau vers .NET Framework 1.1, et si vous rencontrez les symptômes de cet article, appliquez le package de correctifs cet connaissances article de la base de Microsoft.

Statut

Microsoft a confirmé que c'est un problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Plus d'informations

Si vous créez un objet STA en utilisant Server.CreateObject (attribut AspCompat = True") , vous pouvez utiliser l'objet uniquement dans la page Web que vous avez créé pour. Si vous stockez l'objet dans la portée session et renouvelez pour y accéder à partir d'une autre page Web, vous recevez le message d'erreur.

En outre, si vous implémentez la méthode OnStartPage et la méthode OnEndPage à partir de votre objet COM STA, ces méthodes sont appelées pas sur votre objet dans la deuxième page Web.

Procédure pour reproduire le problème

  1. L'exemple de code suivant permet de créer un objet COM Microsoft Visual Basic 6.0 qui comporte AspEventProblem.Class1 pour le ProgId :
    Public Function Test() As String
           Test = "Hello from COM Object"
    End Function
  2. Utilisez Microsoft Visual Basic .NET pour créer une nouvelle application Web.
  3. Créer un formulaire Web nommé WebForm1.aspx .
  4. Ajouter un objet bouton à WebForm1.aspx qui contient le code exemple suivant :
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As 	System.EventArgs) Handles MyBase.Load 
          Session("mycomp") =Server.CreateObject("AspEventProblem.Class1") 
    End Sub Private Sub
    Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
          Handles Button1.Click Response.Redirect("webform2.aspx") 
    End Sub 
  5. Créer un formulaire Web nommé WebForm2.aspx qui contient le code exemple suivant :
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Label1.Text = Session("mycomp").Test()
    End Sub
  6. Dans votre navigateur, afficher WebForm1, puis cliquez sur Button1 .
  7. Lorsque WebForm2 s'affiche, cliquez sur Button1 .

Propriétés

Numéro d'article: 818612 - Dernière mise à jour: mardi 25 octobre 2005 - Version: 5.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft .NET Framework 1.0
Mots-clés : 
kbmt kbhotfixserver kbqfe kbqfe kbnetframe100presp3fix kbfix kbbug KB818612 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 818612
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com