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

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Mensajes
Páginas: 1 ... 158 159 160 161 162 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 ... 235
1721  Programación / Desarrollo Web / Problema con ejemplo sencillo en ASP.NET Razor C# en: 27 Abril 2016, 00:27 am
Muy buen dia compañeros, yo realmente prefiero las soluciones en algun otro lenguaje como PHP pero.... me estan pidiendo trabajar en ASP.NET

Me he topado al tratar de ejcutar un codigo sencillo de ejemplo de la siguiente pagina

http://www.w3schools.com/aspnet/razor_syntax.asp

Código
  1. <!-- Single statement block -->
  2. @{ var myMessage = "Hello World"; }
  3.  
  4. <!-- Inline expression or variable -->
  5. <p>The value of myMessage is: @myMessage</p>
  6.  
  7. <!-- Multi-statement block -->
  8. @{
  9. var greeting = "Welcome to our site!";
  10. var weekDay = DateTime.Now.DayOfWeek;
  11. var greetingMessage = greeting + " Here in Huston it is: " + weekDay;
  12. }
  13. <p>The greeting is: @greetingMessage</p>
  14.  

Al momento de cargar en la URL en el navegaor me dice que:

http://localhost/test.cshtml

Código:
Server Error in '/' Application.

This type of page is not served.

Description: The type of page you have requested is not served because it has been explicitly forbidden.  The extension '.cshtml' may be incorrect.   Please review the URL below and make sure that it is spelled correctly.

Requested URL: /test.cshtml

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34209


He googleado bastante y no he encontrado solucion al problema.

Tengo el IIS instaldo y el codigo lo pongo desde el block de notas en el directorio correspondiente.
Uso windows 8.1 en este momento.

Tengo bastante sin usar windows aun asi no he encontrado la configuracion correspondiente para ejcutar esos codigos.

Si escribo ejemplo de codigo de ASP clasico si los ejecuta, incluso algunos codgios de .net en VB y C# tambien pero el anterior no lo ejecuta para nada.
1722  Programación / Programación C/C++ / Juego de BlackJack en C en: 24 Abril 2016, 15:58 pm
La publicación original la tengo en mi pagina:

http://codigoenc.com/post/33/Juego_de_BlackJack_en_C_paso_a_paso

El juego se puede optimazar si. Se puede perzonalizar si, actualmente juega en automatico.



En este Topic vamos a hacer un juego de blackjack en C, lo vamos a tratar de ser lo mas sencillo posible explicando función por función.


Primero definiremos un Maso de cartas esto es 13 cartas desde el A hasta el K

Código
  1. char *mazo = "A234567890JQK";

Para hacer este juego lo mas escalable posible generaremos dinámicamente un mazo de juego de N bajaras, para eso tenemos la siguiente función:

Código
  1. char *crear_baraja(int n) {
  2. int i = 0,j;
  3. int offset = 0;
  4. char *cartas;
  5. cartas = calloc(sizeof(char)*52+1,n);
  6. while(i < n) {
  7. j = 0;
  8. while(j < 4) {
  9. memcpy(cartas+offset,mazo,13);
  10. offset+=13;
  11. j++;
  12. }
  13. i++;
  14. }
  15. cartas[offset] = '\0'; //Esta instrucción es innecesaria debido a la función calloc pero lo dejamos para aclarar que nuestra condicion de paro es el caracter nulo al final de la cadena
  16. return cartas;
  17. }

La funcion anterior solo nos devuelve un puntero con la memoria asignada mediante Malloc con la cantidad de bajaras que le pedimos.

Ahora si mandamos a llamar esta funcion y mostramos la cadena veremos un mazo ordenado obvio por la forma que se construyo
 En este ejemplo usaremos 2 barajas pero tengan en cuenta que puede ser hasta 1000 barajas siempre y cuando este disponible
Código
  1. baraja = crear_baraja(2);
  2. printf("Baraja:\n%s\n",baraja);
salida:
Código:
Baraja:
A234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQK

Ahora si bien tenemos que barajar la bajara.

Código
  1. char *barajar(char *baraja) {
  2. int len = strlen(baraja);
  3. char *temp = calloc(len+1,1);
  4. int r;
  5. int i = 0;
  6. /*
  7. Poner su propia funcion random disponible en su sistema
  8. En freeBSD prefiero usar arc4rand
  9. */
  10. while(i < len) {
  11. r = arc4random_uniform(len);
  12. if(baraja[r] != 0) {
  13. temp[i] = baraja[r];
  14. baraja[r] = 0;
  15. i++;
  16. }
  17. }
  18. free(baraja);
  19. return temp;
  20. }

Esta función nos devuelve un nuevo puntero con la bajara anterior pero ahora en desorden

Mostramos la salida:
Código
  1. baraja = barajar(baraja);
  2. printf("Baraja:\n%s\n",baraja);
Código:
Baraja:
9KJ4067Q6A9068Q5A08J3Q3QJ7Q3AK38A6J453762KK0852KA4Q52548753Q234A42K2Q3J7KJ090A62A5J0674KJ702689799989584

Depues de construir las funcoines de evaluar carta y evaluar jugador podemos terminar el juego
Código
  1. /*
  2. Twitter @albertobsd
  3.  */
  4. #include<stdio.h>
  5. #include<stdlib.h>
  6. #include<string.h>
  7. /*
  8. Maso basico de Cartas para su salida en pantalla.
  9. el 0 vale representa a la carta 10
  10.  */
  11. typedef struct jugador_struct {
  12. int continuar;
  13. int valor;
  14. int offset;
  15. char mano[6];
  16. }jugador;
  17.  
  18. char *mazo = "A234567890JQK";
  19.  
  20. char *crear_baraja(int n);
  21. char *barajar(char *baraja);
  22. int juego(char *bajara,int *offset,int m);
  23. void evaluar_jugador(jugador *j);
  24. int evaluar_carta(char c);
  25. void debug(char *p,int l);
  26.  
  27. int main() {
  28. char *baraja;
  29. int offset = 0;
  30. printf("Juego de BlackJack\n");
  31. printf("Creando bajara...\n");
  32. baraja = crear_baraja(2);
  33. printf("Baraja:\n%s\n",baraja);
  34. printf("Revolver bajara...\n");
  35. baraja = barajar(baraja);
  36. printf("Baraja:\n%s\n",baraja);
  37. juego(baraja,&offset,6); // La casa juega contra 6 Jugadores Solo una ronda, si queremos mas rondas tendremos que agregarlo en un ciclo y controlar el numero de cartas restantes en la baraja
  38. free(baraja);
  39. }
  40.  
  41. char *crear_baraja(int n) {
  42. int i = 0,j;
  43. int offset = 0;
  44. char *cartas;
  45. cartas = calloc(sizeof(char)*52+1,n);
  46. while(i < n) {
  47. j = 0;
  48. while(j < 4) {
  49. memcpy(cartas+offset,mazo,13);
  50. offset+=13;
  51. j++;
  52. }
  53. i++;
  54. }
  55. cartas[offset] = '\0'; //Esta instruccion es incesaria debido a la funcion calloc
  56. return cartas;
  57. }
  58.  
  59. char *barajar(char *baraja) {
  60. int len = strlen(baraja);
  61. char *temp = calloc(len+1,1);
  62. int r;
  63. int i = 0;
  64. /*
  65. Poner su propia funcion random disponible en su sistema
  66. En freeBSD prefiero usar arc4random_uniform
  67. */
  68. while(i < len) {
  69. r = arc4random_uniform(len);
  70. if(baraja[r] != 0) {
  71. temp[i] = baraja[r];
  72. baraja[r] = 0;
  73. i++;
  74. }
  75. }
  76. free(baraja);
  77. return temp;
  78. }
  79.  
  80. int juego(char *bajara,int *offset,int m) {
  81. int len = strlen(bajara);
  82. int i = offset[0],j = 0,k = 0, n = m+1;
  83. jugador **jugadores;
  84. jugadores = calloc(sizeof(jugador*),n);
  85. //memset(jugadores,0,sizeof(jugador)*2);
  86. /* Generamos n jugadores (m jugadores elegidos por el usuario + la casa jugador 0) */
  87. /* Repartimos Cartas a todos los jugadores*/
  88. while(k < n) {
  89. jugadores[k] = calloc(sizeof(jugador),1);
  90. printf("Memoria asignada para el jugador %i @ 0x%X [%i bytes]\n",k,jugadores[k],sizeof(jugador));
  91. k++;
  92. }
  93. while( j < 2 ) {
  94. k = 0;
  95. while(k < n) {
  96. jugadores[k]->mano[j] = bajara[i];
  97. jugadores[k]->offset++;
  98. i++;
  99. k++;
  100. }
  101. j++;
  102. }
  103. /* Funcion de depuracion
  104. debug(jugadores[0],16);
  105. debug(jugadores[1],16);
  106. */
  107. /*
  108. Aqui se ve la mano de cada jugador en el proximo printf dentro del ciclo solo es para fines didacticos
  109. posteriormente solo se evaluan las manos;
  110. */
  111. j = 0;
  112. while( j < n ) {
  113. printf("Jugador: %i\ncartas %s\n",j,jugadores[j]->mano);
  114. evaluar_jugador(jugadores[j]);
  115. printf("Valor actual: %i\n",jugadores[j]->valor);
  116. j++;
  117. }
  118. /*
  119. Despues de repartir las cartas los jugadores juegan y la casa se destapa al final
  120. */
  121. j = 1;
  122. while( j < n ) {
  123. while(jugadores[j]->continuar) {
  124. jugadores[j]->mano[jugadores[j]->offset] = bajara[i];
  125. //printf("Jugador: %i\ncartas %s\n",j,jugadores[j]->mano);
  126. jugadores[j]->offset++;
  127. evaluar_jugador(jugadores[j]);
  128. i++;
  129. }
  130. j++;
  131. }
  132. /*
  133. Ahora juega la casa.
  134. */
  135. while(jugadores[0]->continuar) {
  136. jugadores[0]->mano[jugadores[0]->offset] = bajara[i];
  137. jugadores[0]->offset++;
  138. evaluar_jugador(jugadores[0]);
  139. i++;
  140. }
  141. /* Mostramos a todos los resultados*/
  142. j = 1;
  143. while( j < n ) {
  144. printf("Jugador: %i\ncartas %s\n",j,jugadores[j]->mano);
  145. printf("Valor actual: %i\n",jugadores[j]->valor);
  146. if(jugadores[j]->valor > 21) {
  147. printf("Perdio\n");
  148. }
  149. else {
  150. if(jugadores[j]->valor == 21) {
  151. printf("Gano BlackJack\n");
  152. }
  153. else {
  154. if(jugadores[0]->valor > 21) {
  155. printf("Gano\n");
  156. }
  157. else {
  158. if(jugadores[j]->valor > jugadores[0]->valor) {
  159. printf("Gano\n");
  160. }
  161. else {
  162. printf("Perdio\n");
  163. }
  164. }
  165. }
  166. }
  167. j++;
  168. }
  169.  
  170. /*
  171. Liberamos memoria de los jugadores
  172. */
  173. while( j < n ) {
  174. free(jugadores[j]);
  175. j++;
  176. }
  177. /*
  178. Retornamos el valor actaul del offset mediante la direccion de memoria del argumento.
  179. y Retornamos el jugador ganador;
  180. */
  181. offset[0] = i;
  182. return 1;
  183. }
  184.  
  185. void evaluar_jugador(jugador *j) {
  186. int i = 0;
  187. char v;
  188. j->valor = 0;
  189. while(j->mano[i] != 0) {
  190. v = evaluar_carta(j->mano[i]);
  191. if(v == 1) {
  192. if((j->valor + 11) <= 21 ) {
  193. j->valor += 11;
  194. }
  195. else {
  196. j->valor += v;
  197. }
  198. }
  199. else {
  200. j->valor += v;
  201. }
  202. if(j->valor <= 16) {
  203. j->continuar = 1;
  204. }
  205. else {
  206. j->continuar = 0;
  207. }
  208. i++;
  209. }
  210. }
  211.  
  212. int evaluar_carta(char c) {
  213. int r = 0;
  214. switch(c) {
  215. case 'A':
  216. r = 1;
  217. break;
  218. case 'K':
  219. case 'Q':
  220. case 'J':
  221. case '0':
  222. r = 10;
  223. break;
  224. case '1':
  225. case '2':
  226. case '3':
  227. case '4':
  228. case '5':
  229. case '6':
  230. case '7':
  231. case '8':
  232. case '9':
  233. r = c - '0';
  234. break;
  235. }
  236. return r;
  237. }
  238.  
  239. void debug(char *p,int l) {
  240. int i = 0;
  241. printf("0x%x\n",p);
  242. while(i < l) {
  243. printf("%.2x",p[i]);
  244. i++;
  245. }
  246. printf("\n");
  247. }
  248.  

Salida completa

Código:
Juego de BlackJack
Creando bajara...
Baraja:
A234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQKA234567890JQK
Revolver bajara...
Baraja:
57A6627296K55Q4Q0073Q2K4J6J297A962AK40350J87754369JJ3JJ7AJQ20828A9A5K0528K8549K9Q0AKK69604487Q38843Q33AQ
Memoria asignada para el jugador 0 @ 0x2880D040 [20 bytes]
Memoria asignada para el jugador 1 @ 0x2880D060 [20 bytes]
Memoria asignada para el jugador 2 @ 0x2880D080 [20 bytes]
Memoria asignada para el jugador 3 @ 0x2880D0A0 [20 bytes]
Memoria asignada para el jugador 4 @ 0x2880D0C0 [20 bytes]
Memoria asignada para el jugador 5 @ 0x2880D0E0 [20 bytes]
Memoria asignada para el jugador 6 @ 0x2880D100 [20 bytes]
Jugador: 0
cartas 52
Valor actual: 7
Jugador: 1
cartas 79
Valor actual: 16
Jugador: 2
cartas A6
Valor actual: 17
Jugador: 3
cartas 6K
Valor actual: 16
Jugador: 4
cartas 65
Valor actual: 11
Jugador: 5
cartas 25
Valor actual: 7
Jugador: 6
cartas 7Q
Valor actual: 17
Jugador: 1
cartas 794
Valor actual: 20
Gano
Jugador: 2
cartas A6
Valor actual: 17
Perdio
Jugador: 3
cartas 6KQ
Valor actual: 26
Perdio
Jugador: 4
cartas 650
Valor actual: 21
Gano BlackJack
Jugador: 5
cartas 250
Valor actual: 17
Perdio
Jugador: 6
cartas 7Q
Valor actual: 17
Perdio
1723  Programación / Programación C/C++ / Re: Guardar Información de una lista ligada en un archivo .txt en: 23 Abril 2016, 13:39 pm
El problema de Guardar los datos es la eleccion del formarto lo que podria ser en Forma Binaria o en texto plano. Una vez elegido esto tambien tendremos que elegir si cada registro tiene longitud fija o longitud variable.

Tiens que elegir un formato y apegarte a el.

Nunca me a gustado la forma en la que trabaja C++ para sacar loa datos a archvos y darles entrada ( <<, >> )

Yo en lo personal prefiero guardar una estrutura fija con fwrite y leerla con fread ( Forma Binaria)

o si voy a trabajar con texto plano seria mediante una estrutura tipo CSV registros separados por lineas, campos separados por comas y cadenas entre comillas.

en tu código veo que usas dos archivos y ademas esos espacios separando los campos,  al momento de leer loa datos no veo que se haga un chequeo del archivo que pasa si un dato no fue ingresado?

Código:
 guardar.open("numero.txt",ios::out);
        guardar<<NumeroEmpleados;
        guardar.close();
        guardar.open("datos.txt",ios::out);
            while(Auxiliar){
                A=Auxiliar->RegresaInfo();
            guardar<<A.getID()<<"     "<<A.getNombre()<<"     "<<A.getDepartamento()<<"     "<<A.getNivel()<<"     "<<A.getAntiguedad()<<"     "
                <<A.getTipoContrato()<<"     "<<A.getDiasTrabajados()<<"     "<<A.getHorasExtra()<<"     "<<A.getSalario()<<"     "<<A.getBonos()
                <<"     "<<A.getDescuentos()<<endl;
                Auxiliar=Auxiliar->RegresaLiga();
        
        guardar.close();
1724  Foros Generales / Sugerencias y dudas sobre el Foro / Re: Cloudflare firewall muy estricto en: 22 Abril 2016, 20:23 pm
No he hecho nada especial.

mmm yo navego por el foro mediante https tal vez por ahi va el problema

Código:
ps aux
1725  Foros Generales / Noticias / Re: Switches de 10 euros de segunda mano, “culpables” del hackeo al Banco Central... en: 22 Abril 2016, 20:18 pm
Claro tienes razón ellos funcionan en Capa 2 del OSI, obviamente no confiaría en los tipos que no ponen en un firewall.

Hay algunos switch con funciones adicionales que los pueden hacer vulnerables en fin... por cierto la lectura que comente sobre como hackearon a un grupo de hackers es la siguiente.

Y si el ataque consistió en un exploit personalizado aqui el link

http://pastebin.com/raw/0SNSvyjJ
1726  Foros Generales / Sugerencias y dudas sobre el Foro / Re: Cloudflare firewall muy estricto en: 22 Abril 2016, 20:11 pm
Código:
ps aux
1727  Foros Generales / Noticias / Re: Switches de 10 euros de segunda mano, “culpables” del hackeo al Banco Central... en: 22 Abril 2016, 20:02 pm
No suena tan descabellado, considerando las noticias de como logararon hackear a un grupo de hackers del gobierno y a todo esto la puerta fue un bug en un router con sistema embebido. De ahi en mas abrirse paso a otros lados fue una verdadera obra mastra.

La mayoría de estos dispositivos de segunda mano son desechables y los fabricantes no se preocupan en nada por la seguridad de los mismo.
1728  Foros Generales / Dudas Generales / Re: me recomiendan algun tema en el que enseñen seguridad de redes en: 22 Abril 2016, 14:34 pm
Seguridad de Redes especificamente redes. Saber como funciona nmap seria un buen inicio en general el tema es toda la comunicacion de TCP/IP. Tratar de saltarse un firewall puede ser muy didactico.

Alguna area en especifico?
1729  Comunicaciones / Redes / Re: ¿ Porque no puedo volver a entrar a mi modem motorola ? en: 22 Abril 2016, 14:00 pm
Muy buen dia. La pagina web del router la proporciona un mini servidor-web dentro del.router, es normal que a veces se traben algunos servicios del router cuando grabas configuraciones, lo normal es que se trabe unos 5 SEGUNDOS, pero 2dias se me hace mucho.

Me imagino que tienes windows mi recomendaciones hacer ping continuo al router y ver si pierde la conectividad y/o la red a la que estas conectaro cambia.

Antes de cambiar la configuracion:


Código:
ping -t 192.168.0.1

Cambias la configuracion y aplicas cambios si ves que el router se pierde y ya no responde algo esta mal en el router o en tu configuracion.

Si no pierden paquetes despues de aplicar cambios entonces...

Prueba que el servidoe web este activo con telnet o netcat.

Manda una peticion GET
Código:
GET / HTTP/1.1




Y ya dependiendo del resultado nos dices
1730  Foros Generales / Foro Libre / Re: Buscando un gran programador para un proyecto en: 22 Abril 2016, 02:17 am
En la rama de las matematicas existe algo que se llama estadistica y los de Google son expertos en ello es facil ver si una web se sale de la desviacion estandar de clicks recividos contra visitas.

Hay que ser tonto para no saber eso
Páginas: 1 ... 158 159 160 161 162 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 ... 235
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines