“Se ha encontrado un argumento impropio” que ejecuta una aplicación de la cinta MFC Windows XP

StackOverflow https://stackoverflow.com/questions/514535

  •  21-08-2019
  •  | 
  •  

Pregunta

He desarrollado una aplicación de la cinta en Vista utilizando VS 2008. Funciona bien en Vista. Me vinculo estáticamente MFC para que pueda ejecutarlo en XP también.

Pero cuando lo ejecuto en XP, que pone un cuadro de diálogo diciendo "Un recurso requerido era unavailble". Más tarde, si presiono OK en este diálogo, se pone otra diciendo "Se ha encontrado un argumento incorrecto". Muchos tales ( "Se encontró un ....") siguen diálogos (uno tras otro) hasta que terminarlo desde el administrador de tareas.

Lo interesante que he notado es que esta situación se produce cuando sólo tiene que colocar el puntero del ratón sobre la barra de la cinta. No hago nada más. Entonces abro el administrador de tareas y veo que la memoria utilizada se incrementa en 8 bytes con cada segundo. Eventualmente seguido por el escenario anterior.

?????

¿Fue útil?

Solución 2

Hubo una pérdida de recursos en mi código que estaba causando este problema.

Me habían llamado GetDC (), mientras que la actualización de los controles de la barra de la cinta (ON_UPDATE_COMMAND_UI), pero no había liberado. Liberándolo por ReleaseDC (..) ha solucionado el problema.

Gracias por todas las respuestas.

Otros consejos

bien puede ser que la cinta es parte de los controles comunes Win32 en Vista (por lo tanto no disponible bajo XP). En otras palabras, aunque se haya vinculado estáticamente MFC, puede que no sea MFC que contiene el recurso que está buscando.

Hacer wiki de la comunidad, ya que realmente no tengo idea de si esto es correcto: -).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top