C/Visual C - error en link.exe

 
Vista:

error en link.exe

Publicado por Juan Manuel L (5 intervenciones) el 11/11/2001 09:02:17
Yo soy programador de VB, y he comenzado a entenderme con VC++ por obligación :) aunque de cualquier forma no deja de ser divertido aprender más (Lo necesito para manejar el sdk de 3dStudiomax4).
Resulta que quise ejecutar uno de los ejemplos de maxsda, pero a la ora de decirle Build all, el comienza compilar todo sus archivos, hasta que ejecuta link.exe y saca el siguiente error:

error LNK2001: unresolved external symbol "public: virtual char * __thiscall ClassDesc::GetRsrcString(long)" (?GetRsrcString@ClassDesc@@UAEPADJ@Z)
..\..\..\..\maxsdk\plugin\IKLimb.dlc : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

si me puedes ayudar lo agradecere...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Error LNK2001: unresolved external symbol en 3D Studio Max SDK

Publicado por Alejandro (913 intervenciones) el 22/10/2024 20:08:36
¡Hola Juan! Entiendo que estás enfrentando un problema de enlace al compilar un proyecto con el SDK de 3D Studio Max. El error `LNK2001: unresolved external symbol` indica que el linker no puede encontrar la definición de la función `GetRsrcString` de la clase `ClassDesc`. Aquí hay algunas sugerencias para resolver este problema:

1. Verifica las bibliotecas enlazadas



Asegúrate de que estás enlazando todas las bibliotecas necesarias del SDK de 3D Studio Max. En particular, verifica que la biblioteca que contiene la implementación de `ClassDesc` esté incluida en tu proyecto. Esto puede ser algo como `maxsdk.lib` o similar.

- Ve a las propiedades del proyecto en Visual C++.
- En "Linker" -> "Input", asegúrate de que las bibliotecas necesarias estén listadas en "Additional Dependencies".

2. Revisa la versión del SDK



Asegúrate de que estás utilizando la versión correcta del SDK que corresponde a la versión de 3D Studio Max que estás utilizando. A veces, las funciones pueden cambiar entre versiones, y es posible que estés intentando usar una función que no está disponible en la versión que tienes.

3. Implementación de la función



Si `GetRsrcString` es una función que deberías implementar tú mismo, asegúrate de que la definición de la función esté presente en tu código. La declaración de la función debe coincidir exactamente con la que se espera.

4. Ejemplo de implementación



Si necesitas implementar `GetRsrcString`, aquí tienes un ejemplo básico de cómo podría verse:

1
2
3
4
char* ClassDesc::GetRsrcString(long id) {
    // Implementación de la función
    return "Resource String"; // Cambia esto según tus necesidades
}

5. Revisar archivos de cabecera



Asegúrate de que todos los archivos de cabecera necesarios estén incluidos en tu proyecto. A veces, un archivo de cabecera que falta puede causar problemas de enlace.

6. Limpiar y recompilar



A veces, los errores de enlace pueden ser causados por archivos de objeto obsoletos. Intenta limpiar el proyecto y recompilarlo:

- Ve a "Build" -> "Clean Solution".
- Luego, selecciona "Build" -> "Rebuild Solution".

7. Consultar la documentación del SDK



Revisa la documentación del SDK de 3D Studio Max para obtener más información sobre la clase `ClassDesc` y la función `GetRsrcString`. Puede haber ejemplos o notas sobre cómo usar correctamente estas funciones.

¡Buena suerte con tu proyecto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar