Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.11;
Скачать: CL | DM;

Вниз

В чем глюк?   Найти похожие ветки 

 
Schummmi   (2002-02-03 10:13) [0]

Доброе утро, Мастера! Не поможите ли. Вот привожу вам часть кода:
type
TURL = record
case Kind:Byte of
0:(GoURL:PChar);
1:(EMail:PChar);
2:(SrEng:Integer;SrText:PChar);
end;
..............................................................

function ReadURL(FileName:string):TURL;
{чтение URL"а из файла}
label 1;
var
F:TextFile;
C,P:Integer;
St,Ts,Adr:^String;
begin
New(St);
New(Ts);
New(Adr);
St^:="";
Adr^:="";
Ts^:="";
Result.Kind:=0;
AssignFile(F,FileName);
Reset(F);
While True do
begin
Readln(F,Ts^);
If (Ts^="[InternetShortcut]") or (Ts^="[InternetShortCut]") then goto 1;
end;
1:Read(F,St^);
P:=Pos("Mailto:",St^);
if P<>0 then
begin
Result.Kind:=1;
Result.EMail:=PChar(System.Copy(St^,P+7,Length(St^)-2));
CloseFile(F);
Exit;
end;
For C:=0 to Form1.Adress.Count-1 do
begin
Adr^:=Form1.Adress.Strings[C];
P:=Pos(Adr^,St^);
if P<>0 then
begin
Result.Kind:=2;
Result.SrEng:=C;
Result.SrText:=PChar(System.Copy(St^,P+Length(Adr^),Length(St^)-2));
CloseFile(F);
Exit;
end;
end;
P:=Pos("URL=",St^);
if P<>0 then
begin
Result.Kind:=0;
Result.GoURL:=PChar(System.Copy(St^,P+4,Length(St^)-(P+3)));
CloseFile(F);
Exit;
end;
CloseFile(F);
Dispose(St);
Dispose(Adr);
end;

В чем глюк? Если Result.Kind = 0 то Result.GoUrl всякую ерунду выдает, вместо нужного URL"а Спасибо!


 
Schummmi   (2002-02-03 10:14) [1]

Надеюсь я вопрос понятно задал?


 
Schummi ©   (2002-02-03 18:02) [2]

Попробуйте в FileName задать путь к url-файлу.


 
SoftOne ©   (2002-02-04 02:18) [3]

Убери case.
Именно он тебе жизнь портит!


 
Schummmi   (2002-02-07 22:51) [4]

Case убрал, но все равно глюки выдает!


 
SoftOne ©   (2002-02-08 01:34) [5]

Как убрал?
И какие глюки?


 
Mbo ©   (2002-02-08 07:36) [6]

в вариантной записи
case Kind:Byte of
ничего не означает, обращаться и присваивать его не надо.
если хочется знать вид прочитанного, надо ввести отдельное поле
TURL = record
Kind:Byte;
case k:byte of
0:(GoURL:PChar);
1:(EMail:PChar);
2:(SrEng:Integer;SrText:PChar);
end;



 
Набережных С.   (2002-02-08 17:44) [7]

>Mbo © (08.02.02 07:36)

TRcr0 = record
case integer of
0:(F1:integer);
1:(W1:Word; W2:Word);
end;

TRcr1 = record
case I:integer of
0:(F1:integer);
1:(W1:Word; W2:Word);
end;

ShowMessage(IntToStr(SizeOf(Trcr0)));//4
ShowMessage(IntToStr(SizeOf(Trcr1)));//8


 
Schummmi   (2002-02-09 07:47) [8]

Что значит глюки. Вот на форме у мя FileListBox. Его активная папка - Избранное. В евоном ОнКлике я пишу, чтобы в Edit отображался URL, который содержит ентый файл. Но когда я раз кликаю, то в Edit"е всякая ерунда появляется. Например: "Адрес:", "Создать" и т.п. Причем это все названия моих лэйблов, иногда название самого файла проскакивает! Вот тут то я бессилен!


 
MBo ©   (2002-02-09 07:54) [9]

>Набережных С.
Действительно. Учту.


 
Набережных С.   (2002-02-09 12:25) [10]

А пошаговая отладка что показывает? Pos хоть раз возвращает что-нибудь, кроме нуля?


 
Schummi ©   (2002-02-09 13:27) [11]

Пошаговой отладкой не пользовался, надо попробовать. А на всякий случай, может есть другие варианты? Спасибо.


 
Набережных С.   (2002-02-09 13:59) [12]

>Пошаговой отладкой не пользовался, надо попробовать

?!!!

Без комментариев. Словарного запаса не хватает.


 
Schummi ©   (2002-02-23 08:16) [13]

Я проанализировал свою программу и увидел, что function ReadURL(FileName:string):TURL; используется только в одном месте, вот и решил убрать эту функцию и поместил часть её кода непосредственно в то место, из которого она вызывалась. Но Всем Огромное Спасибо за Старания!



Страницы: 1 вся ветка

Текущий архив: 2002.03.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
3-32397
BJValentine
2002-02-08 13:39
2002.03.11
DBF ---> MS SQL


3-32390
Jim
2002-02-12 11:50
2002.03.11
Глюк с BLOB ом: как бороть этот баг???


1-32445
Last Hero
2002-02-19 21:38
2002.03.11
Помогите преобращовать Record в Variant!


14-32572
handra
2002-01-24 13:41
2002.03.11
RE


3-32404
Paxer
2002-02-11 19:33
2002.03.11
Подскажите! ADOQuery, UPDATE - ошибка Operation must use updateble query