Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-09-2012
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
amigo Alan_B para que no pierda las esperanzas te cuento que una ves flashe un celular sony erizon en el cual el programa estaba hecho en delphi pero lamentablemente el autor del programa no ofrecia el codigo fuente esto te lo digo en delphi se puede hacer solo hay que saber como
Responder Con Cita
  #2  
Antiguo 10-09-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Mira a ver si esto te sirve de ayuda:

Código Delphi [-]
function GetDeviceName: String;
var
 hKey: Windows.HKEY;
 Device: ShortString;
 Key: String;
 Count, Len: Cardinal;
begin
 Result:= '';
 RegOpenKey(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Services\WpdUsb\Enum', hKey);
 RegQueryValueEx(hKey, 'Count', nil, nil, @Count, @Len);
 if Count = 1 then
 begin
   Len:= sizeof(Device);
   RegQueryValueEx(hKey, '0',  nil, nil, @Device[1], @Len);
   Device[0]:= CHAR(Len-1);
   Device:= Copy(Device, Pos('Vid', Device), Pos('Pid_', Device)+7 - Pos('Vid', Device)+1);
   RegCloseKey(hKey);
   Key:= 'SYSTEM\CurrentControlSet\Enum\USB\' + Device;
   RegOpenKey(HKEY_LOCAL_MACHINE, PCHAR(Key), hKey);
   RegEnumKey(hKey, 0, @Device[1], SizeOf(Device) - 1);
   Device[0]:= CHAR(lstrlen(@Device));
   RegCloseKey(hKey);
   RegOpenKey(HKEY_LOCAL_MACHINE, PCHAR(Key + '\' + Device), hKey);
   RegQueryValueEx(hKey, 'Service', nil, nil, @Device[1], @Len);
   RegCloseKey(hKey);
   Device[0]:= CHAR(Len-1);
   RegOpenKey(HKEY_LOCAL_MACHINE, PCHAR('SYSTEM\CurrentControlSet\Services\' + Device), hKey);
   RegCloseKey(hKey);
   Key:= 'SYSTEM\CurrentControlSet\Services\' + Device + '\Enum';
   RegOpenKey(HKEY_LOCAL_MACHINE, PCHAR(Key), hKey);
   RegQueryValueEx(hKey, 'Count', nil, nil, @Count, @Len);
   if Count = 1 then
   begin
     Len:= sizeof(Device);
     RegQueryValueEx(hKey, '0',  nil, nil, @Device[1], @Len);
     Device[0]:= CHAR(Len-1);   // Ahora tenemos el device y el serial
   end;
   RegCloseKey(hKey);
   Key:= 'SYSTEM\CurrentControlSet\Enum\USB\' + Copy(Device, 5, Length(Device)-4) + '\Device Parameters';
   RegOpenKey(HKEY_LOCAL_MACHINE, PCHAR(Key), hKey);
   Len:= sizeof(Device);
   RegQueryValueEx(hKey, 'SymbolicName', nil, nil, @Device[1], @Len);
   RegCloseKey(hKey);
   Device[0]:= CHAR(Len);
   Result:= Device;
   Result[2]:= '\';
   Result[3]:= '.';
 end
 else
   RegCloseKey(hKey);
end;

Su Uso:
Código Delphi [-]
hFile:= CreateFile(PCHAR(GetDeviceName),
                     GENERIC_READ or GENERIC_WRITE,
                     FILE_SHARE_READ or FILE_SHARE_WRITE,
                     nil, 
                     OPEN_EXISTING,
                     FILE_FLAG_WRITE_THROUGH or FILE_FLAG_NO_BUFFERING, 
                     0);


Saludos.
Responder Con Cita
  #3  
Antiguo 11-09-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Aclaraciones sobre mi mensaje anterior:

1- El código que he escrito para explorar el registro en busca del nombre de dispositivo está basado en un análisis del registro de tres PCs con Windows XP y un Teléfono Samsung Galaxy SII conectado al puerto USB.

2- Sólo funciona con un dispositivo conectado.

3- Devuelve un Nombre de dispositivo que se puede abrir con la API CreateFile.

4- No he escrito nada en mi teléfono.

5- Ignoro si el sistema es válido para otro dispositivo telefónico.



Saludos.
Responder Con Cita
  #4  
Antiguo 11-09-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por escafandra Ver Mensaje
4- No he escrito nada en mi teléfono.
Je, je. Punto importante

// Saludos
Responder Con Cita
  #5  
Antiguo 07-02-2013
bubulino bubulino is offline
Registrado
NULL
 
Registrado: sep 2012
Posts: 1
Poder: 0
bubulino Va por buen camino
amigos alguien logro alguna conexion con el codigo hecho por Ooxtocco,yo tbm tengo el mismo problema no logro conectar me tira el mismo error de Alan
Responder Con Cita
  #6  
Antiguo 19-04-2013
pacocable pacocable is offline
Registrado
 
Registrado: ago 2006
Posts: 9
Poder: 0
pacocable Va por buen camino
creo que es cuestion de drivers

los moviles necesitan sus drivers y si se puede conectar
Responder Con Cita
  #7  
Antiguo 24-04-2013
pacocable pacocable is offline
Registrado
 
Registrado: ago 2006
Posts: 9
Poder: 0
pacocable Va por buen camino
Se conectan casi siempre por puerto com virtual

segun he mirado los moviles al menos nokia se conecta por un com virtual que se crea al conectarlo con sus drivers.asi lo he conectado yo:
procedure TForm1.Button5Click(Sender: TObject);
begin
IF Marcar('COM2',edit3.Text) then
begin
showmessage('llamando');
end
else
begin
showmessage('no llama');
end;
end;

function Marcar(Puerto: String; Telefono: String): Boolean;
var
hPort: THandle;
DCB: TDCB;
Comando: String;
Escritos: Cardinal;
begin
Result:= FALSE;
Puerto:= Uppercase(Puerto);
// Cambiar esto si es necesario un puerto diferente
if (Puerto<>'COM1') and (Puerto<>'COM2') then
begin
showmessage('puerto no valido comprobar panel de control');
exit;
end;

hPort:= CreateFile(PChar('\\.\'+Puerto), GENERIC_READ or GENERIC_WRITE,0, nil,
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if hPort<>INVALID_HANDLE_VALUE then
begin
DCB.DCBlength:= sizeof(DCB);
if GetCommState(hPort,DCB) then
begin
// Cambiar esto para una configuracion del puerto diferente
with DCB do
begin
BaudRate := CBR_9600;
ByteSize := 8;
Parity := NOPARITY;
StopBits := ONESTOPBIT;
Flags := $01;
end;
if SetCommState(hPort, DCB) then
begin
PurgeComm(hPort, PURGE_TXABORT or PURGE_RXABORT or PURGE_TXCLEAR or
PURGE_RXCLEAR);
Comando:= 'ATD'+Telefono+#13;
Result := WriteFile(hPort, PChar(Comando)^, Length(Comando), Escritos, nil);

end;
end;
CloseHandle(hPort);
end
else
begin
showmessage('no conetado');
end;
end;
en text3 va el numero de telefono amarcar lo que si me faltan son mas comandos at
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
ver los contactos de un celular con delphi kurono Varios 0 02-07-2011 00:01:21
No pongas el celular en el bolsillo del pantalon jcarteagaf La Taberna 4 25-07-2008 19:40:53
infectar un celular ciro.arc Seguridad 10 19-07-2008 18:00:36
Programación de un celular hugoChinchilla Conexión con bases de datos 7 14-09-2007 05:09:18
Y asi hay gente que se descresta con un celular mamcx La Taberna 3 14-03-2007 23:14:20


La franja horaria es GMT +2. Ahora son las 11:06:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi