Underc0de - La Casa de los Informáticos

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: FMtH en Septiembre 21, 2016, 09:22:19 PM

Título: [SOLUCIONADO] Duda sobre API de Windows
Publicado por: FMtH en Septiembre 21, 2016, 09:22:19 PM
Hola, hace un poco menos de un año que voy aprendiendo y practicando C++, siempre desde el entorno de DevC++. Y estoy por empezar a estudiar el manejo del API de Windows. Pero tengo entendido que Visual C++ facilita la creacion de programas tipo GUI. Asique mis dudas son:

¿El API de Windows, o las funciones de la libreria windows.h solo me serviran para la creacion de programas tipo GUI? Es decir ¿solo usare el api para crear un interface grafica?

En caso de que si ¿No seria mas simple usar Visual C++ y no tener que escribir tanto codigo para crear una simple ventana? ¿O tambien necesito saber win api si uso Visual C++?

Gracias desde ya. Saludos!
Título: Re:Duda sobre API de Windows
Publicado por: PikachuDorado en Septiembre 22, 2016, 02:23:29 AM
En el laburo usamos visual studio community 2015. Y ahí mismo cuando creas un proyecto elegís qué querés, si un programa de formularios, de consola, una página web, etc..

Título: Re:Duda sobre API de Windows
Publicado por: grep en Septiembre 22, 2016, 11:17:13 AM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
¿El API de Windows, o las funciones de la libreria windows.h solo me serviran para la creacion de programas tipo GUI? Es decir ¿solo usare el api para crear un interface grafica?

Recuerdo que una pregunta similar se había realizado en otro hilo:
Por donde empezar para la programacion de malware? (http://"https://underc0de.org/foro/dudas-generales-121/por-donde-empezar-para-la-programacion-de-malware/msg102308/#msg102308")

La WinAPI o Windows API brinda muchas más características que las relacionadas a Interfaz de Usuario (Windows UI API). A continuación paso unos enlaces que enumeran muchas de las características conocidas de la WinAPI:

Windows API Index:
https://msdn.microsoft.com/en-us/library/windows/desktop/ff818516(v=vs.85).aspx
Windows API en Wikipedia:
https://en.wikipedia.org/wiki/Windows_API#Overview


You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
En caso de que si ¿No seria mas simple usar Visual C++ y no tener que escribir tanto codigo para crear una simple ventana? ¿O tambien necesito saber win api si uso Visual C++?

Es más sencillo claro!

Las ventanas creadas con el designer de Visual Studio (o Visual C++) se conocen como Windows Forms y utilizan clases y características del Framework .NET con sintaxis de C++. Esta interfaz entre C++ y el Framework .NET se conoce como  Managed C++ o C++/CLI y NO se utiliza la WinAPI de forma directa. Programas creados de esta forma se conocen como Windows Forms applications (GUIs que utilizan el CLR del Framework .NET).

Si quieres crear un programa con interfaz de usuario utilizando la WinAPI y no el Framework .NET, entonces debes codificar (escribir código) el diseño de las ventanas. Programas creados de esta forma se conocen como Windows Desktop Applications.

Saludos
Título: Re:Duda sobre API de Windows
Publicado por: FMtH en Septiembre 22, 2016, 12:13:39 PM
Ei @grep (https://underc0de.org/foro/index.php?action=profile;u=59176) gracias por la respuesta tan completa me aclaraste mas cosas de las que esperaba. Ahora solo una cosita mas.
Solo encontre cursos y cosas por el estilo de la parte de Interface User pero de lo demas, como por ejemplo; Los servicios del sistema, no encontre nada explicado de forma gradual como los cursos de Como crear un ventanas y eso.
Debo aprenderlo de la forma dificil no? Es decir, leyendo la pagina de Microsoft e ir sacando conclusiones por mi mismo. Ya que solo en esa pagina eh visto que nombre y de ejemplos de TODAS las funciones de winapi. O hay algo que se me esta escapando?
Siempre que pregundo donde aprender el manejo de winapi, me mandan a la pagina de cconclase, pero ahi solo explica como crear una interface de usuario.
Título: Re:Duda sobre API de Windows
Publicado por: grep en Septiembre 22, 2016, 12:50:30 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
Solo encontre cursos y cosas por el estilo de la parte de Interface User pero de lo demas, como por ejemplo; Los servicios del sistema, no encontre nada explicado de forma gradual como los cursos de Como crear un ventanas y eso.
Debo aprenderlo de la forma dificil no? Es decir, leyendo la pagina de Microsoft e ir sacando conclusiones por mi mismo. Ya que solo en esa pagina eh visto que nombre y de ejemplos de TODAS las funciones de winapi. O hay algo que se me esta escapando?
Siempre que pregundo donde aprender el manejo de winapi, me mandan a la pagina de cconclase, pero ahi solo explica como crear una interface de usuario.


La mejor documentanción la encuentras en inglés. En internet se encuentran muchos artículos esparcidos, pero puedes encontrar mucho en páginas como en CodeProject, CodeGuru, CPlusPlus, Tenouk's y la MSDN de Microsoft por supuesto:

http://www.codeproject.com/KB/vista/
http://www.codeguru.com/
http://www.cplusplus.com/articles/winapi/
http://www.tenouk.com/Sitemap.html

También tienes algunos títulos de libros, los cuales algunos se pueden encontrar en internet:

Windows via C/C++ 5th Edition
Windows System Programming (4th Edition) (Addison-Wesley Microsoft Technology) 4th Edition
Windows Internals
Programming Windows®, Fifth Edition (Developer Reference) 5th Edition
Win32 Programming (Addison-Wesley Advanced Windows Series)

Finalmente, aprendiendo de la forma dificil, como dices, es un buen complemento para afianzar tus conocimientos.

Saludos
Título: Re:Duda sobre API de Windows
Publicado por: FMtH en Septiembre 22, 2016, 01:30:48 PM
Muchisimas gracias @grep (https://underc0de.org/foro/index.php?action=profile;u=59176) :) Pueden dar el tema por solucionado.