CORRECÇÃO: Não é possível definir o modo de alinhamento para zero utilizando _controlfp()

Traduções de Artigos Traduções de Artigos
Artigo: 307611 - Ver produtos para os quais este artigo se aplica.
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Expandir tudo | Reduzir tudo

Sintomas

Uma chamada para _controlfp (_DN_FLUSH, _MCW_DN) não activa o modo de limpeza para zero para uma aplicação IA64.

Causa

Isto se a um erro nas bibliotecas de tempo de execução do C IA64.

Resolução

Para resolver este problema, obtenha o service pack mais recente do Windows XP. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
322389Como obter o Windows XP Service Pack mais recente
A versão inglesa desta correcção deverá ter os seguintes atributos de ficheiro ou posteriores:

Reduzir esta tabelaExpandir esta tabela
DataTempoVersãoTamanhoNomePlataforma
24-Set-200110: 587.0.2600.14 (xpclnt_qfe.010827 1804)941,056Msvcrt.dllIA64

Nota : Se este produto já foi instalado no computador quando adquiriu o fabricante de equipamento original (e necessitar desta correcção), contacte o número de pagamento por incidente listado no Web site acima. Se contactar a Microsoft para obter esta correcção, poderá ser cobrada uma taxa. Esta taxa é refundable caso é determinado que requerem apenas a correcção que pediu. No entanto, esta taxa é não refundable se solicitar suporte técnico adicional, se o período de suporte técnico gratuito expirou ou se não são elegíveis para obter suporte técnico gratuito padrão.

Este problema ocorre em IA64 aplicações que são criadas com ferramentas Win64 a partir de Agosto de 2001 (compilação 9234) Platform Software Development Kit (SDK). Esta correcção é apenas para o ficheiro de .dll CRT. Correcções para as bibliotecas estáticas CRT serão enviadas de uma futura Platform SDK.

Ponto Da Situação

A Microsoft confirmou que este erro ocorre nos produtos da Microsoft listados no início deste artigo. Este problema foi corrigido pela primeira vez no Windows XP Service Pack 1.

Mais Informação

Para reproduzir o problema, criar um binário de 64 bits utilizando o seguinte código de exemplo e a 64-bit C/C ++ compilador e Linker, que está disponível a partir das ferramentas de 64 bits do Windows Platform SDK. Introduza um ponto de interrupção na função _controlfp e executá-la no sob o depurador WinDbg (para 64 bits). Examine o valor do registo "fpsr" antes e depois executa a função _controlfp . Deverá ver que o bit sexta menos significativo (com base em 0) não está definido depois da chamada para _controlfp . Depois de instalar a correcção, este bit deve ser definido.
#include <stdio.h>
#include <float.h>

int main( int argc, char ** argv)
{
  printf( "Before calling _controlfp()\n");

  _controlfp( _DN_FLUSH, _MCW_DN);

  printf( "After calling _controlfp()\n");
}
				

Propriedades

Artigo: 307611 - Última revisão: 24 de fevereiro de 2014 - Revisão: 2.5
A informação contida neste artigo aplica-se a:
  • Microsoft Windows XP Professional x64 Edition
  • The C Run-Time (CRT)
Palavras-chave: 
kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbfix kboswin2000fix kbwinxpsp1fix KB307611 KbMtpt
Tradução automática
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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 307611

Submeter comentários

 

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