SoloCodigo
		Programación General => C/C++ => Visual C++ => Mensaje iniciado por: a343 en Lunes  8 de Agosto de 2011, 12:01
		
			
			- 
				Esta funcion muestra un dialogo para insertar una variable, tras introducir los datos y darle a aceptar, salta un error, poniendo puntos de interrupcion, creo que el error debe estar en las ultimas dos funciones ( pDoc->UpdateAllViews (NULL);
 pDoc->SetModifiedFlag (true);). Pero no se que puede pasar, el error que da es el siguiente:
 Excepción no controlada en 0x775353dc en prueba7.exe: 0xC0000005: Infracción de acceso al escribir en la ubicación 0x00100fd8.
 
 
 void Cprueba7View::OnVariablesInsertarnueva()
 {
 CString nombre;	// Nombre de la nueva variable por defecto
 INT_PTR tam_vars = 0;	// Tamaño del array de variables
 nombre = NuevoNombre(TEXT("Var"),&NombresVars);
 // Se obtiene un puntero de la clase view
 Cprueba7Doc* pDoc = GetDocument();
 ASSERT_VALID(pDoc);
 
 // Constructor del diálogo características
 CDlgCaracteristica dlg (this, true, &NombresVars);
 // Establezco en el edit del diálogo el nombre por defecto
 dlg.Variable.Nombre = nombre;
 dlg.m_nombre.SetString (nombre);
 if (dlg.DoModal () == IDOK)
 {
 // El usuario introdujo una variable nueva
 // La inserto en el vector de variables
 tam_vars = pDoc->Variables.Add (new CDatos (dlg.Variable.Tipo  ,0 ,dlg.Variable.Escala,dlg.Variable.Nombre , NULL, NULL, dlg.Variable.Etiqueta , dlg.Variable.Labels , dlg.Variable.Ausente , dlg.Variable.Precision ));
 pDoc->UpdateAllViews (NULL);
 pDoc->SetModifiedFlag (true);
 }
 }
 
 Espero que alguien me pueda ayudar,
 Gracias
- 
				por favor, alguien podria responderme?