Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - .::IT::.

#51
Si tienes las fuentes podrias editarlo sin ningun problema, otra cosa que podrias hacer es editar el archivo host que esta en  "C:\Windows\System32\drivers\etc" y poner

Nuevaip ViejaIp
#52
Primero que nada debes bajarte el conector de Oracle para .net desde :
http://www.oracle.com/technetwork/topics/dotnet/index-085163.html

Ya que el de Windows ya esta algo viejo mirar:

http://msdn.microsoft.com/es-es/library/77d8yct7%28v=vs.110%29.aspx

según eso dice:
The types in System.Data.OracleClient are deprecated. The types are supported in version 4 of the .NET Framework but will be removed in a future release. Microsoft recommends that you use a third-party Oracle provider.

Ahora el motivo de tu error es que en lugar de "@" para los parametros se usa los ":"

ejemplo:
Código (sql) [Seleccionar]

String commandString = "INSERT INTO Users (Name, Desk, UpdateTime) VALUES (:Name, :Desk, :UpdateTime)";
using (OracleCommand command = new OracleCommand(commandString, _connection, _transaction))
{
   command.Parameters.Add("Name", OracleType.VarChar, 50).Value = strategy;
   command.Parameters.Add("Desk", OracleType.VarChar, 50).Value = deskName ?? OracleString.Null;
   command.Parameters.Add("UpdateTime", OracleType.DateTime).Value = updated;
   command.ExecuteNonQuery();
}


El ejemplo fue sacado de http://stackoverflow.com/questions/343299/bulk-insert-to-oracle-using-net

Ahora la forma que recomiendo seria que crees un packete y dentro pongas los procedimientos almacenados un ejemplo con un pequeña tabla que hice.

Código (sql) [Seleccionar]

-- Creamos la tabla
CREATE TABLE clientes
(
 idcliente INTEGER NOT NULL,
nombre VARCHAR2(100)NOT NULL,
 fecha_registro DATE NOT NULL,
CONSTRAINT pk_departamentos PRIMARY KEY(idcliente)
);
/
-- Creamos el packete y definimos los procedimientos-funciones etc.
CREATE OR REPLACE PACKAGE pk_clientes IS
 TYPE t_cursor IS REF CURSOR;

 PROCEDURE sp_registra(
           p_nombre VARCHAR2,
           p_fecha_registro DATE
 );
 
 PROCEDURE sp_actualiza(
           p_idcliente INTEGER,
           p_nombre VARCHAR2,
           p_fecha_registro DATE
 );
 
 PROCEDURE sp_get_lista(
           p_resul OUT t_cursor
 );
 
 PROCEDURE sp_get_info_cliente(
           p_idcliente INTEGER,
           p_resul OUT t_cursor
 );
 
END pk_clientes;
/
-- Creamos el cuerpo del packete aqui se implementa los procedimientos-funciones etc.
CREATE OR REPLACE PACKAGE BODY pk_clientes IS
 
 --Procedimiento para Registrar
 PROCEDURE sp_registra(
           p_nombre VARCHAR2,
           p_fecha_registro DATE
 )
 IS
 BEGIN
   INSERT INTO clientes(
               nombre,
               fecha_registro
               )VALUES(
               p_nombre,
               p_fecha_registro
               );
   COMMIT;
 END;
 
 --Procedimiento para Actualizar
 PROCEDURE sp_actualiza(
           p_idcliente INTEGER,
           p_nombre VARCHAR2,
           p_fecha_registro DATE
 )
 IS
 BEGIN
   UPDATE clientes SET
          nombre=p_nombre,
          fecha_registro=p_fecha_registro
   WHERE
          idcliente=p_idcliente;
   COMMIT;
 END;
 
 --Procedimiento para Listar
 PROCEDURE sp_get_lista(
           p_resul OUT t_cursor
 ) IS
 BEGIN
   OPEN p_resul FOR
   SELECT
     idcliente,
     nombre,
     fecha_registro
   FROM
     clientes;
 END;
 
 --Procedimiento para Informacion de un cliente
 PROCEDURE sp_get_info_cliente(
           p_idcliente INTEGER,
           p_resul OUT t_cursor
 ) IS
 BEGIN
   OPEN p_resul FOR
   SELECT
     idcliente,
     nombre,
     fecha_registro
   FROM
     clientes
   WHERE
     idcliente=p_idcliente;
 END;
 
END pk_clientes;
/
-- Secuencia para hacer el campo idcliente autonumerico
CREATE SEQUENCE seq_cliente;
/
CREATE OR REPLACE TRIGGER tr_seq_cliente BEFORE INSERT ON clientes
FOR EACH ROW
BEGIN
 SELECT seq_cliente.nextval INTO :new.idcliente FROM dual;
END;


Como podras fijarte eh creado un packete con todas las funciones que necesito para hacer mantenimiento a la tabla clientes. bueno para llamarlo desde .net asumiento que tengo una clase oCliente con propiedades idcliente,nombre,fecha_registro y quiero invocar al procedimiento sp_registra seria asi:

Código (vbnet) [Seleccionar]

public static void RegistrarCliente(oCliente info)
       {
           using (OracleConnection oCn = new OracleConnection(App.GetStrConnection()))
           {
               string proc = string.Empty;
               proc = "pk_clientes.sp_registra";
               OracleCommand oCmd = new OracleCommand(proc, oCn);
               oCmd.CommandType = CommandType.StoredProcedure;

               
               oCmd.Parameters.Add(new OracleParameter("p_nombre", OracleDbType.Varchar2)).Value = info.nombre;
               oCmd.Parameters.Add(new OracleParameter("p_fecha_registro", OracleDbType.Date)).Value = info.fecha_registro;

               oCn.Open();

               try
               {
                   oCmd.ExecuteNonQuery();
               }
               catch (Exception ex)
               {
                   throw new Exception(ex.Message, ex);
               }
           }
       }


Bueno para no hacerlo mas largo te adjunto un pequeño proyecto que hice donde muestro mas detallado la invocacion de cada procedimiento del packete creado.

https://rapidshare.com/files/907284720/TestOracle.zip

Para correrlo pues debes editar la cadena de conexion de App.config y claro ejecutar el script SQL de lineas arriba!!
#53
listview!!!  :D
#54
Ya está Actualizado solo lo renombran el archivo como .rar queda, como dije alguna vez en el foro no recuerdo la mejor forma de automatizar un reto captcha es viendo los mensajes de POST o GET que implementa una pagina :), por ejemplo con Wireshark.
#55
Mi recomendacion es que uses las clases HttpResponse y HttpRequest.

http://www.codeproject.com/Articles/11021/Use-HTTPRequest-HTTPResponse-to-browse-WEB-pages
#56
.NET (C#, VB.NET, ASP) / Re: Ayuda
22 Enero 2012, 17:09 PM
Date.Now.ToString()   <-- devuelve la fecha y hora del sistema
#57
.NET (C#, VB.NET, ASP) / Proyecto Erp OpenSource
28 Diciembre 2011, 16:34 PM
Holas a todos, apuesto a que muchos del foro se dedican a hacer aplicaciones a medida para empresas (como es mi caso), reutilizamos código y armamos proyectos en horas ,unos cuantos días o meses jajaja, Pues ahora quisiera hacer algo más profesional (tanto interface como código y como sabrán son muchas cosas y la verdad demoraría muchos tiempo hacerlo solo, aparte que mis GUI son muy pobres), Por mi parte pues me ofrezco como programador, y quisiera ver sus opiniones, voluntario(s) para dirigir el proyecto , definir características, nomenclatura   etc.

Se preguntaran porque no inicio yo solo, pues porque sinceramente nunca lo terminare ya que muchas veces eh reescrito mis aplicaciones porque sabía que se podían hacer mejor (cuantos no hemos hecho eso).

Algunos dirán porque no usar uno que ya existe, simplemente no eh encontrado uno echo en ".net "que es el lenguaje que yo uso.

Y por último quiero especificar algunas características.
Interface web Asp .net ("WebForm"  o  "MVC"  por mi prefiero MVC y una librería que muchos conocen http://www.ext.net/ )

Modo de programación en CAPAS (WebServices para el acceso a datos)

Base de datos: postgresql  inicialmente( discutible)

Reportes: Actualmente uso uno http://www.fyireporting.com/ el cual podemos adaptar a nuestras necesidades y soportar ASP.net

Espero sus opiniones. Gracias y FELIZ FIN DE AÑO  ;D
#58
Espero te sirva:

http://foro.elhacker.net/net/captcha_con_dataid-t312069.0.html

http://foro.elhacker.net/net/capturar_captcha_del_webbrowser-t307536.0.html

Basicamente consiste en averiguar la url del captcha por los general una peticion POST GET guardar la cookie de respuesta y mostrar la imagen :) suerte !!
#59
.NET (C#, VB.NET, ASP) / Re: Seguridad en Servidor
22 Septiembre 2011, 06:02 AM
Imaginemos un web services que contiene un webmethod  llamado login, al cual le envias el usuario y password de tu aplicación este webmethod te devuelve un hash el cual usaras para consumir los demás webservices encargados de procesar determinados datos que le envíes,
Y como enviar el  hash?? Pues por medio de los soapheader
http://msdn.microsoft.com/en-us/library/77hkfhh8%28v=vs.71%29.aspx
Ahora ya tienes tu aplicación con los cálculos en el servidor y el cliente los consume usando un usuario y login, bueno así lo hago Yo.

Saludos!!!
#60
jejeje quise decir serialización(eso pasa por corregir con word!!!), como por ejemplo xml para cuando quieras devolver consultas "select" ya en el lado del cliente deberás generar una clase que convierta xml a datatable o manejar directamente el xml como Datasource.
Aquí un link
http://www.orlandobrea.com.ar/2010/05/servicios-web-retornar-un-xml-con.html