Fórum Pessoal, ajuda ae com esse Copy()... #369092
16/03/2009
0
#?USBVid_0951&Pid_16070019E0014A165C8812120139{a5dcbf10-6530-11d2-901f-00c04fb951ed}
Quero colocar numa outra String o valor:
USB\Vid_0951&Pid_1607\0019E0014A165C8812120139
Só que, o valor de [b:61babd824d]Pid_[/b:61babd824d] acima muda, podendo ter mais de 4 casas ou menos, e no lugar de [b:61babd824d][/b:61babd824d] coloco [b:61babd824d]\[/b:61babd824d]
Eu sei que tenho de procurar por [b:61babd824d][/b:61babd824d] para localizar o Pid_
Algum fera saberia fazer esse copy para a string?
Ajuda ae que complicou a minha lógica aqui :lol:
Onjahyr
Curtir tópico
+ 0Posts
16/03/2009
Woinch
function CopiaStr(Texto: String; Posicao: Integer; Ocorrencia: String): String; var I : Integer; begin Result := ´´; I := 0; while (Pos(Ocorrencia, Texto) > 0) do begin Result := Copy(Texto, 0, Pos(Ocorrencia, Texto)-1); Delete(Texto, 1, Pos(Ocorrencia, Texto)+ Length(Ocorrencia) -1); Inc(I); if (I = Posicao) then Exit; Result := Texto; end; end;
Exemplo de utilização:
ShowMessage(CopiaStr(´#?USBVid_0951&Pid_16070019E0014A165C8812120139{a5dcbf10-6530-11d2-901f-00c04fb951ed}´ 5, ´´)); //Mostra mensagem "0019E0014A165C8812120139"Espero ter ajudado...
Gostei + 0
16/03/2009
Onjahyr
Poxa, tava com a cabeça quente. Estou criando um programa de proteção. Faz 15 dias que estou desse jeito! É rotinas de baixo nível da API usando WMI, WbemScripting_TLB e XML. Ufaa!!!
Agora é só interface e criação de imagem ISO que tenho pronto, falta só adaptação...
Blz heim, sou grato pela ajuda.
Gostei + 0
16/03/2009
Marco Salles
function OutraOpcao(const texto:String):string;
var
pi,pf:integer;
begin
result:=Texto;
pi:=pos(´USB´,texto);
pf:=pos(´{´,texto);
result:=copy(texto,pi,pf-pi-1);
result:=stringReplace(result,´#´,´\´,[rfReplaceAll, rfIgnoreCase]);
end;Exemplo de usao
showmessage(OutraOpcao(
´?USBVid_0951&Pid_16070019E0014A165C8812120139{a5dcbf10-6530-11d2-901f-00c04fb951ed)´));
Gostei + 0
17/03/2009
Onjahyr
Grato.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)