SoloCodigo

Programación General => C/C++ => Visual C++ => Mensaje iniciado por: a343 en Lunes 18 de Abril de 2011, 13:19

Título: Error en visual studio 2010 (c++)
Publicado por: a343 en Lunes 18 de Abril de 2011, 13:19
Hola,

Tenia un proyecto vacio de prueba, y otro , el que yo estoy haciendo los dos funcionando perfectamente en VS 2010.
Bueno, pues tan solo cambiando unas cosas en mi proyecto, me ha salido un error, que no hay manera de solucionar, y no creo que sea de codigo, ya que a mi compañero, le sale ese error, pero tan solo en los proyectos creados nuevos con VS 2010. Aqui os pongo el error y las lineas de codigo donde esta :

c:program filesmicrosoft visual studio 10.0vcatlmfcincludeatltransactionmanager.h(262): error C3861: 'AtlLoadSystemLibraryUsingFullPath': no se encontró el identificador
c:program filesmicrosoft visual studio 10.0vcatlmfcincludeatltransactionmanager.h(312): error C3861: 'AtlLoadSystemLibraryUsingFullPath': no se encontró el identificador
c:program filesmicrosoft visual studio 10.0vcatlmfcincludeatltransactionmanager.h(342): error C3861: 'AtlLoadSystemLibraryUsingFullPath': no se encontró el identificador

Código: C++
  1. if (!bInitialized)
  2.     {
  3.         HMODULE hKTM32 = AtlLoadSystemLibraryUsingFullPath(L"ktmw32.dll");
  4.         if (hKTM32 != NULL)
  5.         {
  6.             pfCreateTransaction = (PFNCREATETRANSACTION)GetProcAddress(hKTM32, "CreateTransaction");
  7.         }
  8.         bInitialized = true;
  9.     }
  10.  

Código: C++
  1. if (!bInitialized)
  2.     {
  3.         HMODULE hKTM32 = AtlLoadSystemLibraryUsingFullPath(L"ktmw32.dll");
  4.         if (hKTM32 != NULL)
  5.         {
  6.             pfCommitTransaction = (PFNCOMMITTRANSACTION)GetProcAddress(hKTM32, "CommitTransaction");
  7.         }
  8.         bInitialized = true;
  9.     }
  10.  

Código: C++
  1. if (!bInitialized)
  2.     {
  3.         HMODULE hKTM32 = AtlLoadSystemLibraryUsingFullPath(L"ktmw32.dll");
  4.         if (hKTM32 != NULL)
  5.         {
  6.             pfRollbackTransaction = (PFNROLLBACKTRANSACTION)GetProcAddress(hKTM32, "RollbackTransaction");
  7.         }
  8.         bInitialized = true;
  9.     }
  10.  

La linea en la que da el error en los 3 es

HMODULE hKTM32 = AtlLoadSystemLibraryUsingFullPath(L"ktmw32.dll");
Título: Re: Error en visual studio 2010 (c++)
Publicado por: rfog en Lunes 18 de Abril de 2011, 17:11
Hay un pequeño error con esa función en la última actualización de seguridad de Microsoft, y están en ello.

Si tenéis problemas la mejor opción es tirar de restaurar sistema y no actualizar los runtimes de C++ ni los parches para visual studio.

MS sacará la corrección lo antes posible.

Dicho como MVP de C++ Oficial de MS.
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Martes 19 de Abril de 2011, 09:18
Joder, pues estamos buenos...., lo antes posible vete tua saber cuando sera....

Muchas gracias compañero!
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Domingo 24 de Abril de 2011, 20:29
Necesito una solucion para este error, no puedo esperar a que microsof lo arregle porque vete tu a saber cuando lo arreglara, lo mas probable esque no tenga punto de restauracion, porque los suelo borrar, asique... si me podeis dar alguna solucion lo agradeceria.
Por ejemplo, cual es la actualizaacion que hace que de este fallo y si se puede desistalar
Título: Re: Error en visual studio 2010 (c++)
Publicado por: rfog en Domingo 24 de Abril de 2011, 21:37
Activa ver actualizaciones en los programas instalados.

Vete a la opción de los runtimes de Visual Studio y desinstala las KB que tengan fecha de la última actualización de Windows Update.
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Domingo 24 de Abril de 2011, 23:59
Hola

Hice lo que me dijiste, el unico Kb que me salia lo desistale, pero el error sigue saliendo igual.
Me sale Microsof Visual Studio 2010 Tools for office Runtine y Microsoft Visual Studio 2010 Ultimate ESN
En este ultimo salia un KB instalado hace relativamente poco, pero no justo el dia que me dio el error (justo ese dia instale actuzaliciones y depsues de instalarlas me salio el error). Lo desistale, pero el error persiste.
¿Alguna otra idea?

Gracias!!
Título: Re: Error en visual studio 2010 (c++)
Publicado por: rfog en Lunes 25 de Abril de 2011, 10:03
¿Seguro que no te aparece ninguna de estas actualizaciones?

http://www.microsoft.com/technet/securi ... 1-025.mspx (http://www.microsoft.com/technet/security/bulletin/MS11-025.mspx" onclick="window.open(this.href);return false;)
http://support.microsoft.com/kb/2500212 (http://support.microsoft.com/kb/2500212" onclick="window.open(this.href);return false;)
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Lunes 25 de Abril de 2011, 22:04
No, solo me aparecen esas que te puse.
¿que puedo hacer?
¿Y si desistalo VS 2010 y lo vuelvo a instalar?
Título: Re: Error en visual studio 2010 (c++)
Publicado por: rfog en Lunes 25 de Abril de 2011, 22:52
No tengo ni idea, pero prueba.

Cuando esté desinstalado, borra a mano las carpetas del SDK en Archivos de Programa.
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Martes 26 de Abril de 2011, 14:51
Lo desistale completamente, borre las carpetas esas, y lo volvi a instalar. Ya no da ningun problema. Debi de hacer esto desde un principio.

Y ahora cuando me salga una actualizacion de windows... ¿que hago? ¿actualizo o no? xD
Título: Re: Error en visual studio 2010 (c++)
Publicado por: rfog en Martes 26 de Abril de 2011, 15:18
Cita de: "a343"
Lo desistale completamente, borre las carpetas esas, y lo volvi a instalar. Ya no da ningun problema. Debi de hacer esto desde un principio.

Y ahora cuando me salga una actualizacion de windows... ¿que hago? ¿actualizo o no? xD

La verdad es que no suelen cagarla así de mal casi nunca... Las empresas grandes (o más bien con departamento de IT potente), suelen tener ordenadores "cebo" en donde meten las actualizaciones y las prueban en un entorno controlado, y si pasan los controles entonces activan su servidor WSUS (creo que se llama así) y dejan pasar las actualizaciones a todas las demás máquinas.

En el caso de una empresa pequeña, y en la situación que nos ocupa, se podría tener una máquina virtual con un ordenador duplicando más o menos lo instalado en las reales, actualizar sólo la máquina virtual y recompilar desde ella el código de la empresa etc...

Lo que yo hago en donde trabajo, con un sólo ordenador de desarrollo (el mío), es instalar primero en casa (donde tengo más compiladores y más basuras varias), y si va bien en mis proyectos, luego actualizo los (poquísimos) ordenadores de la empresa, servidor incluído.
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Martes 26 de Abril de 2011, 15:52
Muchas gracias por tu ayuda, yo solo tengo mi ordenador, ya que esto lo hago porque estoy liao con el proyecto fin de carrera. Asique supongo que si supongo que tendre puntos de restauracion cercanos y si se vuelve a joder, restauro  y listo
Título: Re: Error en visual studio 2010 (c++)
Publicado por: rfog en Martes 26 de Abril de 2011, 21:26
http://blogs.msdn.com/b/vcblog/archive/ ... 58277.aspx (http://blogs.msdn.com/b/vcblog/archive/2011/04/26/10158277.aspx" onclick="window.open(this.href);return false;)

La solución a todos los problemas de la última actualización.
Título: Re: Error en visual studio 2010 (c++)
Publicado por: a343 en Lunes 2 de Mayo de 2011, 16:15
Lo solucione desistalando y volviendo a instalar, gracias!