Вверх ↑
Этот топик читают: Гость
Ответов: 1304
Рейтинг: 405
#1: 2009-01-05 14:21:51 ЛС | профиль | цитата
TempFileStream не работает под FPC
Пример

Add(MainForm,2953706,21,105)
{
Width=250
Height=146
Position=1
}
Add(Button,14904893,98,112)
{
Left=10
Top=5
Width=100
Caption="TempFileStream"
link(onClick,7383528:doEvent1,[])
}
Add(TempFileStream,15953776,196,70)
{
Stream=[ZIP0400000078DABBF4F4E3270008CF039B]
Prefix="~"
Extention="txt"
}
Add(Memo,330443,196,112)
{
Left=10
Top=30
Width=220
link(FileName,15953776:TempFName,[(209,107)(202,107)])
}
Add(Hub,7383528,140,112)
{
link(onEvent1,15953776:doCreate,[(188,118)(188,76)])
link(onEvent2,330443:doLoad,[(184,125)(184,146)])
}
Есть аналог TempFileStream на элементах, но не полный, работает только если временный файл удалять в корзину, что не очень хорошо. .

Add(MainForm,10988377,21,91)
{
Width=150
Height=197
Position=1
Point(onClose)
}
Add(FileStream,12751024,217,154)
{
Mode=1
Point(doPosition)
Point(doCopyFromStream)
link(FileName,2122353:Value,[])
}
Add(MemoryStream,13578150,154,70)
{
Stream=[ZIPD802000078DAFB7FE3FF0306012F374F370646260606462064F8FF90E1996B45661A0383A7A71603070303032B83102333480A8C0D812A6580B417101B01D922401AA898419809A126B39D054C57314080A3B38B42706571496A6EB1824B667A6649628E82676E627A665E3A83918181A59581A19581A982A13188616C08B49161023B030B50A7819191C184494C60B689912103D30288C93C40CC0C65F382DC0865EF81DAC804E4417405595A005950D30C0D0C40B25C40FCFF00832007502F0F33A32203932023B320E3FFDB0C2D0CCC4C40C00822998180859D050438D9D858D9B938B9B9B938B9B8787805F978780478B8B8F845F8050485848585B9F944C54485C4806C21461656563656365E76765E69217E216992C1FF230CD90C8C8C8C0CC8808D85438001E82E162666B8042313330B2B1BBBA01083128798A22123A61E56410646A01F803183A4479041C89045D131905558C929F1FF2D500000FD0F14B667B85DF54FE7DBECDF65BBEEF39EDAD973D9B07CF5D215993173AEAC51AC7378231A7036BDE3B196EC3D53B52407C757B79372F396FE67E8FBF23E9FC969E769219B8D2B5A9C2DD6DD11115ED4B05AFD755583455C6343DDBDF4AD6FF96FF9BCF17C91FFB16FDB32AB870B8B8FB247E75D1099B22D81554B586FAAFC861D1D363E1C425A676FDDBE7D7BF276D30D117FEE998BAB8887DD9CF58F6D5F9419A36C55C7B2AFC1EFF80B7F5928FF387EEC5ED814814D2BCF145E7F6F5278D72BE6D2B6036C0121698F1C7719CC51532E323EC75AFFFF2600C2569CA4]
Point(doPosition)
}
Add(DoData,14119307,154,119)
{
Data=Integer(0)
link(onEventData,12751024:doCopyFromStream,[(202,125)(202,181)])
link(Data,13578150:Stream,[])
}
Add(Hub,9241067,70,140)
{
OutCount=6
link(onEvent1,2984357:doString,[(120,146)(120,76)])
link(onEvent2,12751024:doOpen,[(209,153)(209,160)])
link(onEvent3,14119307:doData,[(128,160)(128,125)])
link(onEvent4,12751024:doClose,[])
link(onEvent5,13782102:doLoad,[(128,174)(128,223)])
}
Add(Memory,2122353,217,112)
{
Default=String()
}
Add(Button,11625718,21,140)
{
Left=5
Top=5
Width=90
Caption="MemoryStream"
link(onClick,9241067:doEvent1,[])
}
Add(Memory,8122284,154,175)
{
Default=String(%WINDOWSTemp~.txt)
}
Add(FileTools,6972357,308,294)
{
link(FileName,14581811:Value,[])
}
Add(Memory,14581811,308,252)
{
Default=String()
}
Add(FormatStr,2984357,217,70)
{
DataCount=1
Mask="%1Temp~.jpg"
link(onFString,13919646:doEvent1,[])
link(Str1,6750508:WindowsDir,[(223,62)(251,62)])
}
Add(Dir,6750508,217,21)
{
Point(WindowsDir)
}
Add(Hub,13919646,259,70)
{
OutCount=4
link(onEvent1,2122353:doValue,[(308,76)(308,148)(206,148)(206,118)])
link(onEvent2,8122284:doValue,[(317,83)(317,109)(142,109)(142,181)])
link(onEvent3,14581811:doValue,[(299,90)(299,258)])
}
Add(Hub,9728323,217,217)
{
link(onEvent1,13782102:doDraw,[(258,223)(258,211)(142,211)(142,230)])
link(onEvent2,6972357:doDelete,[(268,230)(268,314)])
}
Add(Image,2201877,217,259)
{
Left=5
Top=35
Width=130
Height=130
Color=12632256
}
Add(ImageLoader,13782102,154,217)
{
DrawSource=2
link(onLoad,9728323:doEvent1,[])
link(onDraw,2201877:doLoad,[(202,230)(202,265)])
link(FileName,8122284:Value,[])
}
Если кто знает как удалить файл, без отправки в корзину, подскажите пойжалуста.



карма: 3

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#2: 2009-01-05 15:34:08 ЛС | профиль | цитата
MAV писал(а):
TempFileStream не работает под FPC

Или у тебя FPC корявый, или я не знаю что, но я только что проверил -- у меня все работает. Да и точку желательно ставить перед расширением.
карма: 22

0
Ответов: 1304
Рейтинг: 405
#3: 2009-01-05 15:48:55 ЛС | профиль | цитата
nesco писал(а):
Или у тебя FPC корявый

Возможно, но тогда он корявый не только у меня но и у всех кто установил HiAsm 4.0 b173, на b172 не работало то-же. В одной из тем я уже затрагивал эту тему, и получил от вас совет обновиться, не помогло.
Точка на ход дела не повлияла.
------------ Дoбавленo:

Третий был-бы не лишним . Проверьте пойжалуста тестовый примерчик под FPC.
карма: 3

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#4: 2009-01-05 15:50:13 ЛС | профиль | цитата
Вот что у меня выдает, что еще надо



карма: 22

0
файлы: 1tempfille_001.png [13.4KB] [322]
Ответов: 3851
Рейтинг: 159
#5: 2009-01-05 15:51:43 ЛС | профиль | цитата
Отладка писал(а):
Подготовка к сборке проекта...
Генерация кода целевого языка
Компоновка проекта...
Command line: fpc.exe '"C:\HiAsm\4_0b173\Elements\delphi\code\TempFile.pas"' -Sd -Mdelphi '"-FEC:\HiAsm\4_0b173\Elements\delphi\Example\Files\"' '"-FUC:\HiAsm\4_0b173\Elements\delphi\code\units"' -FDtools\ -CX -dF_P
Free Pascal Compiler version 1.9.6 [2004/12/31] for i386
Copyright (c) 1993-2004 by Florian Klaempfl
Target OS: Win32 for i386
Compiling C:\HiAsm\4_0b173\Elements\delphi\code\TempFile.pas
Compiling C:\HiAsm\4_0b173\Elements\delphi\code\hiImageLoader.pas
Fatal: Can't find unit KOLComObj
Error: C:\HiAsm\Compiler\fpc\ppc386.exe returned an error exitcode (normal if you did not specifiy a source file to be compiled)
Сборка завершена.



карма: 0
начавший
0
Ответов: 1304
Рейтинг: 405
#6: 2009-01-05 16:08:53 ЛС | профиль | цитата
nesco, компилируется без проблем

при нажатии на кнопку

Увидел отличие, почему-то после -FDtools -CX -dF_P, у меня нет параметра -dSUPER_PARENT


карма: 3

0
файлы: 2image2.jpg [41.4KB] [316], image1.jpg [6.2KB] [387]
Гость
Ответов: 17029
Рейтинг: 0
#7: 2009-01-05 16:12:51 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-02 09:15:00
карма: 0

0
Ответов: 1304
Рейтинг: 405
#8: 2009-01-05 16:21:22 ЛС | профиль | цитата
nesco писал(а):
Вот что у меня выдает, что еще надо

Кстати не ответил на прямой вопрос, да именно это надо.

94.50.247.13 писал(а):
Ты ещё чтото FPC компилируешь??СТАВЬ ДЕЛЬФИ, И НЕ МАЙСЯ!!!!!!!!!!!!

Наверное правильней сказать, уже компилирую под FPC , компилятор delphi давно установлен.


карма: 3

0
Ответов: 1088
Рейтинг: 112
#9: 2009-01-05 16:21:57 ЛС | профиль | цитата
У меня тоже не пашет.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#10: 2009-01-05 16:28:10 ЛС | профиль | цитата
MAV писал(а):
у меня нет параметра -dSUPER_PARENT

Ну и забей на него. Я и без него проверял.

Сразу вопрос -- как ставил пакет, инсталлятором или как Андрей, поверх предыдущей копии
карма: 22

0
Ответов: 1304
Рейтинг: 405
#11: 2009-01-05 16:30:26 ЛС | профиль | цитата
Sniper36, лучше не провоцируй товарища, а то тема моментально скатитсся к обсуждению недостатков и достоинств компиляторов.
карма: 3

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#12: 2009-01-05 16:33:09 ЛС | профиль | цитата
MAV, все, понял. Ничем помочь не смогу, я проверял на KOL от Galkova, сейчас проверил на стандартном, да, есть ошибка.
И проблема не в TempFileName, а в Memo. Поставь ListBox, такой ошибки не будет
карма: 22

0
Ответов: 1304
Рейтинг: 405
#13: 2009-01-05 17:01:29 ЛС | профиль | цитата
nesco писал(а):
Сразу вопрос -- как ставил пакет, инсталлятором или как Андрей

Ставил инсталлятором, сверху кинул заплатку, час назад обновился по HiUpdate
------------ Дoбавленo:

nesco писал(а):
И проблема не в TempFileName, а в Memo


Пример

Add(MainForm,3283653,14,21)
{
Width=169
Height=149
Position=1
}
Add(Button,14904893,63,21)
{
Left=10
Top=5
Width=100
Caption="TempFileStream"
link(onClick,15953776:doCreate,[])
}
Add(TempFileStream,15953776,119,21)
{
Stream=[ZIP0400000078DABBF4F4E3270008CF039B]
Prefix="~"
Extention=".txt"
}
карма: 3

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#14: 2009-01-05 17:40:23 ЛС | профиль | цитата
MAV, обновись, я нашел глюк -- проблема в DeleteFiles под FPC, я ее заменил на DeleteFile
карма: 22

1
Голосовали:MAV
Ответов: 1304
Рейтинг: 405
#15: 2009-01-06 13:52:52 ЛС | профиль | цитата
Ураа заработало.
nesco, спасибо.

------------ Дoбавленo:

nesco, точно такая-же заморочка в компоненте "FileTools". Если применить найденное тобой решение, удаление файлов в "FileTools" заработает под FPC.
Правленный hiFiletools.pas
http://hiasm.1gb.ru/xf//getfile/11226
Пример на котором проверил(хотя уже сам пример не актуален)

Add(MainForm,10988377,35,98)
{
Width=150
Height=197
Position=1
Point(onClose)
}
Add(FileStream,12751024,231,161)
{
Mode=1
Point(doPosition)
Point(doCopyFromStream)
link(FileName,2122353:Value,[])
}
Add(MemoryStream,13578150,168,77)
{
Stream=[ZIPD802000078DAFB7FE3FF0306012F374F370646260606462064F8FF90E1996B45661A0383A7A71603070303032B83102333480A8C0D812A6580B417101B01D922401AA898419809A126B39D054C57314080A3B38B42706571496A6EB1824B667A6649628E82676E627A665E3A83918181A59581A19581A982A13188616C08B49161023B030B50A7819191C184494C60B689912103D30288C93C40CC0C65F382DC0865EF81DAC804E4417405595A005950D30C0D0C40B25C40FCFF00832007502F0F33A32203932023B320E3FFDB0C2D0CCC4C40C00822998180859D050438D9D858D9B938B9B9B938B9B8787805F978780478B8B8F845F8050485848585B9F944C54485C4806C21461656563656365E76765E69217E216992C1FF230CD90C8C8C8C0CC8808D85438001E82E162666B8042313330B2B1BBBA01083128798A22123A61E56410646A01F803183A4479041C89045D131905558C929F1FF2D500000FD0F14B667B85DF54FE7DBECDF65BBEEF39EDAD973D9B07CF5D215993173AEAC51AC7378231A7036BDE3B196EC3D53B52407C757B79372F396FE67E8FBF23E9FC969E769219B8D2B5A9C2DD6DD11115ED4B05AFD755583455C6343DDBDF4AD6FF96FF9BCF17C91FFB16FDB32AB870B8B8FB247E75D1099B22D81554B586FAAFC861D1D363E1C425A676FDDBE7D7BF276D30D117FEE998BAB8887DD9CF58F6D5F9419A36C55C7B2AFC1EFF80B7F5928FF387EEC5ED814814D2BCF145E7F6F5278D72BE6D2B6036C0121698F1C7719CC51532E323EC75AFFFF2600C2569CA4]
Point(doPosition)
}
Add(DoData,14119307,168,126)
{
Data=Integer(0)
link(onEventData,12751024:doCopyFromStream,[(216,132)(216,188)])
link(Data,13578150:Stream,[])
}
Add(Hub,9241067,84,147)
{
OutCount=6
link(onEvent1,2984357:doString,[(134,153)(134,83)])
link(onEvent2,12751024:doOpen,[(223,160)(223,167)])
link(onEvent3,14119307:doData,[(142,167)(142,132)])
link(onEvent4,12751024:doClose,[])
link(onEvent5,13782102:doLoad,[(142,181)(142,230)])
}
Add(Memory,2122353,231,119)
{
Default=String()
}
Add(Button,11625718,35,147)
{
Left=5
Top=5
Width=90
Caption="MemoryStream"
link(onClick,9241067:doEvent1,[])
}
Add(Memory,8122284,168,182)
{
Default=String(%WINDOWSTemp~.txt)
}
Add(FileTools,6972357,322,301)
{
DelToRecycle=1
link(FileName,14581811:Value,[])
}
Add(Memory,14581811,322,259)
{
Default=String()
}
Add(FormatStr,2984357,231,77)
{
DataCount=1
Mask="%1Temp~.jpg"
link(onFString,13919646:doEvent1,[])
link(Str1,6750508:WindowsDir,[(237,69)(265,69)])
}
Add(Dir,6750508,231,28)
{
Point(WindowsDir)
}
Add(Hub,13919646,273,77)
{
OutCount=4
link(onEvent1,2122353:doValue,[(322,83)(322,155)(220,155)(220,125)])
link(onEvent2,8122284:doValue,[(331,90)(331,116)(156,116)(156,188)])
link(onEvent3,14581811:doValue,[(313,97)(313,265)])
}
Add(Hub,9728323,231,224)
{
link(onEvent1,13782102:doDraw,[(272,230)(272,218)(156,218)(156,237)])
link(onEvent2,6972357:doDelete,[(282,237)(282,321)])
}
Add(Image,2201877,231,266)
{
Left=5
Top=35
Width=130
Height=130
Color=12632256
}
Add(ImageLoader,13782102,168,224)
{
DrawSource=2
link(onLoad,9728323:doEvent1,[])
link(onDraw,2201877:doLoad,[(216,237)(216,272)])
link(FileName,8122284:Value,[])
}




карма: 3

0
файлы: 1hifiletools.rar [547B] [120]
Сообщение
...
Прикрепленные файлы
(файлы не залиты)