Não correcção: O aplicativo pode carregar recursos de um assembly satélite se a conta de usuário representado não tem permissões para acessar o arquivo .config do aplicativo no .NET Framework 1.1 Service Pack 1

O suporte para o Office 2003 terminou

A Microsoft terminou o suporte para o Office 2003 em 8 de abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Saiba o que isto significa para você e como permanecer protegido.

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 894092
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
Quando você usar representação no seu Microsoft aplicativo baseado em .NET Framework 1.1 Service Pack 1 (SP1) e a conta de usuário representado não tem permissões para acessar o arquivo .config do aplicativo, o aplicativo não é possível carregar recursos de assemblies satélites.

Quando esse problema ocorre, os recursos neutros são retornados em vez dos recursos que estão contidos no assembly satélite.

Além disso, nas versões de inglês do Microsoft Office SharePoint Portal Server 2003, a página Definições do site é exibida em inglês.

Observação Esse comportamento pode ocorrer em outras versões de inglês do SharePoint Portal Server 2003 que ainda não tiverem sido relatadas.
Resolução
Um hotfix suportado agora está disponível da Microsoft, mas destina-se somente a corrigir o problema descrito neste artigo. Aplique-o somente nos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde o próximo service pack do .NET Framework 1.1 que contém esse hotfix.

Para resolver esse problema imediatamente, contate o Atendimento Microsoft para obter o hotfix. Para obter uma lista completa de telefones do Atendimento Microsoft e informações sobre os custos de suporte da, visite o seguinte site: Observação Em alguns casos, as taxas cobradas pelas ligações para chamadas de suporte podem ser canceladas se um profissional de suporte da Microsoft determinar que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados a questões e problemas que não se qualificam à atualização específica em questão de suporte adicionais.

Pré-requisitos

O .NET Framework 1.1 Service Pack 1 é necessário.

Requisitos de reinicialização

Reinicie o computador após aplicar esse hotfix.

Informações sobre a substituição do hotfix

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário na ferramenta Data e hora no painel de controle.
    Date         Time   Version            Size    File name   --------------------------------------------------------------   06-May-2005  07:37  1.1.4322.2323   2,138,112  Mscorlib.dll        06-May-2005  07:39                     10,904  Mscorlib.ldo   06-May-2005  07:48  1.1.4322.2323   2,519,040  Mscorsvr.dll        06-May-2005  07:49  1.1.4322.2323   2,506,752  Mscorwks.dll     
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".
Mais Informações

Etapas para reproduzir o problema

  1. Crie assembly satélite. Para fazer isso, execute as seguintes etapas:
    1. Crie um arquivo de texto chamado MyRes.txt e adicione o seguinte texto para o arquivo:
      TEST1 = "TEST1 for Neutral resource"
    2. Crie um arquivo recurso chamado MyRes.resources executando o seguinte comando:
      ResGen MyRes.txt MyRes.resources
    3. Crie um assembly de recurso é denominado MyRes.dll executando o seguinte comando:
      AL /t:lib /embed:MyRes.resources /culture:neutral /out:MyRes.dll
    4. Crie uma pasta no seu projeto é denominado ja-jp para armazenar outra cultura.
    5. Crie um arquivo de texto chamado MyRes.txt na nova pasta e adicione o seguinte texto para o arquivo:
      TEST1 = "TEST1 for Japanese"
    6. Crie um arquivo recurso chamado jp.resources MyRes.ja na nova pasta, executando o comando a seguir:
      ResGen MyRes.txt MyRes.ja-jp.resources
    7. Crie um assembly de recurso é denominado MyRes.resource.dll executando o seguinte comando:
      al /t:lib /embed:MyRes.ja-jp.resources /culture:ja-jp /out:MyRes.resources.dll
  2. Crie um aplicativo de console. Para fazer isso, execute as seguintes etapas:
    1. Crie um arquivo de origem Microsoft Visual translation from VPE for Csharp que é chamado Test.cs e adicione o seguinte exemplo de código para file.
      // Test.cs// --------------------------------------------using System;using System.Runtime.InteropServices;using System.Security.Principal;using System.Security.Permissions;class Class1{	[DllImport("advapi32.dll", SetLastError=true)]	public static extern bool LogonUser(String lpszUsername, String lpszDomain, String lpszPassword, int dwLogonType, int dwLogonProvider, ref IntPtr phToken);	[DllImport("kernel32.dll", CharSet=CharSet.Auto)]	public extern static bool CloseHandle(IntPtr handle);	[DllImport("advapi32.dll", CharSet=CharSet.Auto, SetLastError=true)]	public extern static bool DuplicateToken(IntPtr ExistingTokenHandle, int SECURITY_IMPERSONATION_LEVEL, ref IntPtr DuplicateTokenHandle);	static void Main(string[] args)	{		string str;		// Load MyRes.dll and initialize ResouceManager.		System.Reflection.Assembly asm = System.Reflection.Assembly.Load("MyRes");		System.Resources.ResourceManager res = new System.Resources.ResourceManager("MyRes", asm);		// Perform impersonation.		IntPtr tokenHandle = new IntPtr(0);		IntPtr dupeTokenHandle = new IntPtr(0);					string UserName, Password;		UserName = "testuser";  // Change the user name and password correctly.		Password = "testuser";  // Change the user name and password correctly.  		const int LOGON32_PROVIDER_DEFAULT = 0;		const int LOGON32_LOGON_INTERACTIVE = 2;		const int SecurityImpersonation = 2;		tokenHandle = IntPtr.Zero;		dupeTokenHandle = IntPtr.Zero;		bool returnValue = LogonUser(UserName, ".", Password, LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT,ref tokenHandle);		bool retVal = DuplicateToken(tokenHandle, SecurityImpersonation, ref dupeTokenHandle);            		WindowsIdentity newId = new WindowsIdentity(dupeTokenHandle);		WindowsImpersonationContext impersonatedUser = newId.Impersonate();		// Try to obtain the "ja-jp" string from the satellite assembly.		str = res.GetString("TEST1", new System.Globalization.CultureInfo("ja-jp"));		// Determine the result of the ResouceManager.GetString method.		Console.WriteLine(str);		// Determine the current user name.		str = System.Security.Principal.WindowsIdentity.GetCurrent().Name;		Console.WriteLine(str);		impersonatedUser.Undo();		if (tokenHandle != IntPtr.Zero)			CloseHandle(tokenHandle);		if (dupeTokenHandle != IntPtr.Zero) 			CloseHandle(dupeTokenHandle);	}}
    2. Crie o aplicativo Test.exe. Para fazer isso, compile Test.cs usando o comando a seguir:
      CSC test.cs
    3. Crie um arquivo Test.exe.config vazio na mesma pasta como o aplicativo Test.exe.
    4. Verifique se MyRes.dll está na mesma pasta como o aplicativo Test.exe.
    5. Na mesma pasta como o aplicativo Test.exe, crie uma subpasta chamada ja-jp.
    6. Copie o arquivo MyRes.resource.dll para a subpasta ja-jp.
  3. Crie uma nova conta de usuário. Para fazer isso, execute as seguintes etapas:
    1. Crie uma nova conta de usuário que é chamada testuser e definir a senha como testuser .
    2. Adicione a conta de usuário testuser ao grupo administrador local.
    3. Altere a permissão de arquivo no arquivo Test.exe.config para Negar todos os para a conta de usuário testuser .
  4. No prompt de comando, execute o Test.exe aplicativo.

    Quando você executa o aplicativo, TEST1 de recurso neutro é retornado em vez de TEST1 para japonês .
Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 894092 - Última Revisão: 12/09/2015 02:09:13 - Revisão: 4.5

Microsoft .NET Framework 1.1 Service Pack 1, Microsoft Office SharePoint Portal Server 2003

  • kbnosurvey kbarchive kbmt kbwinserv2003sp2fix kbqfe kbhotfixserver kbresource kbnetframe110presp2fix kbbug kbfix kbprb KB894092 KbMtpt
Comentários