elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: 1 ... 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 [178] 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 ... 216
1771  Comunicaciones / Redes / Re: Problemas Cliente DHCP y Cliente DNS en: 3 Febrero 2019, 13:31 pm
Saludos,

- El Cliente DHCP te otorga una IP, Máscara, Puerta de Enlace y Servidores DNS. Tu PC tiene todo esto, así que funciona.

- El Cliente DNS resuelve nombres de dominio a IP utilizando tus Servidores DNS, esto también funciona, así que no es culpa de ninguno de estos servicios.

- Si tus servidores DNS te dan problemas, porqué no configuras unos DNS Estáticos, por ejemplo los de Google o Open DNS.

-- La forma de comprobar la accesibilidad a los Servidores DNS es haciéndoles un PING <IP_del _DNS> (Ej.: PING 8.8.8.8), has un ping a tus servidores DNS y verifica que estén bien.

-- Para especificar un Servidor DNS estático lo haces en: https://img-17.ccm2.net/NJKy98BdJjBbOub_jiAQcLEqNg0=/42b1da54c6024d0595b349134c45cb0e/ccm-ugc/Enviados_y_Recibidos.jpg > Propiedades =>



-- Es un ejemplo de DNS de Google y OpenDNS
1772  Programación / Programación C/C++ / Re: Ayuda con conocimientos sobre C++ en: 3 Febrero 2019, 03:16 am
Saludos,

- Supongo que te refieres a crear Interfaces Gráficas, en caso de Windows puedes revisar lo siguiente: http://www.rickygzz.com.mx/win32/index.php

- Y este cuaderno de prácticas: https://openlibra.com/es/book/cuaderno-de-ejercicios-y-practicas-c-de-programacion-2
1773  Programación / Desarrollo Web / Re: [Pregunta]: Consultas Mysql / PHP en: 3 Febrero 2019, 01:13 am
Saludos,

- Con  LIMIT puedes hacer consultas que muestren rangos de registros:

Código
  1. mysql> SELECT * FROM tb_user LIMIT 0,5;
  2. +---------+------+
  3. | id      | name |
  4. +---------+------+
  5. | user_01 | pepe |
  6. | user_02 | paco |
  7. | user_03 | jhon |
  8. | user_04 | raul |
  9. | user_05 | juan |
  10. +---------+------+
  11. 5 rows in set (0.00 sec)
  12.  
  13. mysql> SELECT * FROM tb_user LIMIT 5,5;
  14. +---------+------+
  15. | id      | name |
  16. +---------+------+
  17. | user_06 | ivan |
  18. | user_07 | jose |
  19. | user_08 | rita |
  20. | user_09 | tito |
  21. | user_10 | abel |
  22. +---------+------+
  23. 5 rows in set (0.00 sec)
  24.  
  25. mysql> SELECT * FROM tb_user LIMIT 10,5;
  26. +---------+------+
  27. | id      | name |
  28. +---------+------+
  29. | user_11 | carl |
  30. | user_12 | dana |
  31. | user_13 | katy |
  32. | user_14 | lola |
  33. | user_15 | nina |
  34. +---------+------+
  35. 5 rows in set (0.00 sec)

- Ahí puedes encontrar el patrón, el primer argumento de LIMIT es el índice desde donde se deben extraer los registros (empezando desde 0 como los típicos Array), el segundo indica la cantidad de registros a extraer. El primer argumento es siempre la suma del primer y segundo argumento del SELECT anterior.

- Puedes poner una condicional que verifique si se han devuelto datos o hacer un COUNT(*) previo.
1774  Programación / Desarrollo Web / Re: Duda cargando CSS bootstrap. en: 3 Febrero 2019, 00:05 am
- Hay un curso en MiriadaX que ha trascendido desde hace años, el curso está cerrado pero tengo entendido que uno se puede matricular para acceder al material:
https://miriadax.net/web/desarrollo-en-html5-css-y-javascript-de-apps-web-android-ios-8-ed-

- En el Módulo 6 - Tema 6 y 7, habla habla justamente sobre Bootstrap, puedes ver los vídeos aquí:





- En el Tema 0, encuentras el enlace para descargar los ficheros fuente. Como ejercicio puedes tomar las fuentes básicas (imágenes, librerías, etc) y utilizar Bootstrap para replicar los ejercicios de los vídeos.

- También puedes ver las capacidades de Bootstrap en los ejemplos que están en su página oficial:
https://getbootstrap.com/docs/4.2/examples/
1775  Programación / Programación C/C++ / Re: Es posible usar ( como expresion regular? c++ <regex> en: 2 Febrero 2019, 23:49 pm
Saludos,

- Anda! en ninguno de mis libros en español he encontrado algo sobre expresiones regulares en C++ :-\, he tenido de echar mano de este otro buen libro en Inglés The C++ Standard Library 2nd Edition: https://www.mica.edu.vn/perso/Vu-Hai/EE3490/Ref/The%20C++Standard%20Library%20-%202nd%20Edition.pdf pág 717 (Chapter 14 Regular Expressions) Wow, la verdad está explicado muy bien, fácil de entender, bastante ejemplificado y práctico, comparándolo con los enigmáticos libros de Bjarne Stroustrup, pues puede ser el creador y todo pero sus libros no son sencillos de comprender :xD

Código
  1. name Turing
  2. key (31)
  3.  
  4. name Pepe
  5. key (54)
  6.  
  7. name Vlad
  8. key (12)

Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <regex>
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8.  ifstream file("example.txt");
  9.  regex n("(^name\\s)(\\w+)");
  10.  regex k("(^key\\s\\()(\\d+)(\\))");
  11.  smatch m;
  12.  string line;
  13.  while ( getline(file, line) ) {
  14.    if ( regex_search(line, m, n) ) {
  15.      cout << m[2] << endl;
  16.    } else if ( regex_search(line, m, k) ) {
  17.      cout << m[2] << endl;
  18.    }
  19.  }
  20.  file.close();
  21.  return 0;
  22. }

Código
  1. C:\Users\EdSon\Desktop>g++ regex.cpp -o regex.exe && regex.exe
  2. Turing
  3. 31
  4. Pepe
  5. 54
  6. Vlad
  7. 12
  8.  
  9. C:\Users\EdSon\Desktop>
1776  Media / Multimedia / Re: descargar videos en: 2 Febrero 2019, 21:02 pm
Saludos,

- Que raro, Machacador es fiel usuario de Internet Download Manager (IDM), es extraño que no lo mencione. IDM trabaja como Aplicación y Plugin, la aplicación configura al plugin, el plugin funciona en todos los navegadores y tiene un filtro de extensiones de ficheros para los cuales ofrece descargarlos cuando se carguen en el navegador.

- Por defecto IDM no ofrece descarga de los ficheros flash (SWF), pero se puede configurar fácilmente abriendo aplicación e ir al menú: Descargas >Opciones > General > Personalizar panel de descarga de IDM (Editar) > Para reproductores web > Añadir, y tipear: SWF > Aceptar a todo.

-- Luego abrir la página me muestra el FLASH e IDM lo detectará y ofrecerá descargarlo.

- PERO los Flash suelen tener ciertas protecciones, por ejemplo un Flash que llama a otro Flash utilizando parámetros determinados, un Flash que hace uso de recursos alojados en otro sitio, etc. Sería cosa de probar y ver si funcionan sin Internet.

https://www.internetdownloadmanager.com/download.html

- Supongo que hay cientos de plugins gratuitos y de pago, con spam y sin spam, que permitan hacer lo mismo que IDM, yo prefiero siempre IDM  :xD
1777  Programación / Desarrollo Web / Re: Barra de progreso (Con dos valores) en: 1 Febrero 2019, 14:46 pm
Saludos,

- Si usas un Framework como Bootstrap es sencillo: https://getbootstrap.com/docs/4.2/components/progress/

- Si tienes no quieres hacer uso de un Framework, siempre puedes examinar como lo hace el framework inspeccionando el elemento y replicándolo en tu código:

Ejemplo replicando código de Bootstrap: https://jsbin.com/sorujilaho/edit?html,output
1778  Programación / Desarrollo Web / Re: Duda cargando CSS bootstrap. en: 1 Febrero 2019, 13:53 pm
Saludos,

- Solo has cambiado ese .css, no has cambiado nada más? Bootstrap trabaja además con jQuery, ambas versiones deben de ser compatibles. Veo que usas una versión antigua de Bootstrap, revisa que tu jQuery sea compatible, esto lo ves en la web de Bootstrap > Bootstrap CDN > Examples, por ejemplo:

Código
  1. <!-- Latest compiled and minified CSS -->
  2. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
  3.  
  4. <!-- jQuery (necessary for Bootstrap's javascript plugins) -->
  5. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  6.  
  7. <!-- Latest compiled and minified javascript -->
  8. <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

-- Me parece que tu versión de Bootstrap es compatible con el viejo jQuery 1.12.4: https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js


-- Aparte de otros recursos más que usa Bootstrap, como fuentes y temas:

bootstrap/
├── css/
│   ├── bootstrap.css
│   ├── bootstrap.css.map
│   ├── bootstrap.min.css
│   ├── bootstrap.min.css.map
│   ├── bootstrap-theme.css
│   ├── bootstrap-theme.css.map
│   ├── bootstrap-theme.min.css
│   └── bootstrap-theme.min.css.map
├── js/
│   ├── bootstrap.js
│   └── bootstrap.min.js
└── fonts/
    ├── glyphicons-halflings-regular.eot
    ├── glyphicons-halflings-regular.svg
    ├── glyphicons-halflings-regular.ttf
    ├── glyphicons-halflings-regular.woff
    └── glyphicons-halflings-regular.woff2


-- Recomiendo utilizar la última versión del producto: https://getbootstrap.com/docs/4.2/getting-started/download/
1779  Programación / Programación C/C++ / Re: Funcion que devuelva un array en: 1 Febrero 2019, 03:17 am
Saludos,

- Yo suelo solicitar al usuario el tamaño del array y crearlo en vivo:

Código
  1. #include <stdio.h>
  2.  
  3. int main() {
  4.  int cantidad;
  5.  printf("Indique la cantidad de elementos del Array: ");
  6.  scanf("%d", &cantidad);
  7.  int array[cantidad];
  8.  for (int i = 0; i < cantidad; i++) {
  9.    array[i] = i;
  10.  }
  11.  for (int i = 0; i < cantidad; i++) {
  12.    printf("%d\n", array[i]);
  13.  }
  14.  return 0;
  15. }

- Sin embargo he estado leyendo varios libros de programación en C y veo que casi ninguno habla de lo que hago. Es bastante sencillo utilizar el método que expongo, pero por lo que he leído, esto no es Estándar y muchos compiladores darán error.

-- Yo uso MinGW (gcc, g++, 6.3.0) y nunca me ha dado problemas al respecto así que ni enterado.

- La mayoría de los libros solo hablan de Arrays estáticos (int array[5], #define SIZE 5; int array[SIZE], int array[] = {1, 2, 3, 4, 5}), luego pasan directamente a Arrays dinámicos con punteros y malloc, free y NULL.

- Recomiendo este libro gratuito en español que justo trato el tema: Vectores Estáticos (pág. 63), Memoria Dinámica (pág. 213):
https://openlibra.com/es/book/introduccion-a-la-programacion-con-c-3

-- Y este par más que son bastante prácticos con varios ejemplos con malloc y free:
https://openlibra.com/es/book/fundamentos-de-programacion-en-c
https://openlibra.com/es/book/apuntes-de-la-materia-de-programacion-basica
1780  Programación / Programación C/C++ / Re: tinyXML c++ en: 1 Febrero 2019, 00:21 am
Saludos,

- Si te fijas lo has estado haciendo bien, Sibling es Hermano o Campañero, pRoot no tiene ningún hermano o compañero, esto lo tienes que hacer sobre pBodys tal como lo vienes haciendo con pParm = pParms->FirstChildElement("Input");

- Usa: pBodys = pBodys->NextSiblingElement("Test");

- También corrige: (int)count->Attribute("cont") en tu FOR, esto devuelve un Puntero y lo que conviertes a INT es el Puntero, no el valor. Mejor usa: count->IntAttribute("cont") en su lugar:

Código
  1. #include <iostream>
  2. #include "tinyxml2.cpp"
  3. #include "tinyxml2.h"
  4.  
  5. using namespace std;
  6. using namespace tinyxml2;
  7.  
  8. int main() {
  9.  XMLDocument doc;
  10.  doc.LoadFile("example.xml");
  11.  XMLElement *pRoot, *pBodys, *pParms, *pParms2, *pProcess, *pApp, *pLineFormat, *pParm, *pParm2, *count;
  12.  pRoot = doc.FirstChildElement("Tests");
  13.  if (pRoot) {
  14.    count = pRoot->FirstChildElement("count");
  15.    cout << "cont = " << count->Attribute("cont") << endl;
  16.    pBodys = pRoot->FirstChildElement("Test");
  17.  
  18.    for (int i = 0; i < count->IntAttribute("cont"); i++) {
  19.      cout << "id = " << pBodys->Attribute("id") << endl;
  20.      if (pBodys) {
  21.        pParms = pBodys->FirstChildElement("Inputs");
  22.        if (pParms) {
  23.          pParm = pParms->FirstChildElement("Input");
  24.          while (pParm) {
  25.            cout << "port = " << pParm->Attribute("port") << " ";
  26.            cout << "value = " << pParm->Attribute("value") << endl;
  27.            pParm = pParm->NextSiblingElement("Input");
  28.          }
  29.        }
  30.        pParms2 = pBodys->FirstChildElement("Outputs");
  31.        if (pParms2) {
  32.          pParm2 = pParms2->FirstChildElement("Output");
  33.          while (pParm2) {
  34.            cout << "port = " << pParm2->Attribute("port") << " ";
  35.            cout << "value = " << pParm2->Attribute("value") << endl;
  36.            pParm2 = pParm2->NextSiblingElement("Output");
  37.          }
  38.        }
  39.      }
  40.      pBodys = pBodys->NextSiblingElement("Test");
  41.    }
  42.  }
  43.  
  44.  return 0;
  45. }

Código
  1. <Tests>
  2.  <count cont="2"></count>
  3.  <Test id="test0">
  4.    <Inputs>
  5.      <Input port="A" value="1" />
  6.      <Input port="B" value="4.56" />
  7.      <Input port="C" value="7" />        
  8.    </Inputs>
  9.    <Outputs>
  10.      <Output port="D" value="10" />      
  11.    </Outputs>
  12.  </Test>
  13.  <Test id="test1">
  14.    <Inputs>
  15.      <Input port="K" value="3" />
  16.      <Input port="L" value="9.56" />
  17.    </Inputs>
  18.    <Outputs>
  19.      <Output port="P" value="6" />      
  20.    </Outputs>
  21.  </Test>
  22. </Tests>

Código
  1. C:\Users\EdSon\Desktop>g++ xmlreader.cpp -o xmlreader.exe && xmlreader.exe
  2. cont = 2
  3. id = test0
  4. port = A value = 1
  5. port = B value = 4.56
  6. port = C value = 7
  7. port = D value = 10
  8. id = test1
  9. port = K value = 3
  10. port = L value = 9.56
  11. port = P value = 6
  12.  
  13. C:\Users\EdSon\Desktop>

- Documentación TinyXML-2: http://leethomason.github.io/tinyxml2/classtinyxml2_1_1_x_m_l_element.html
Páginas: 1 ... 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 [178] 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 ... 216
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines