Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: iBasic
sapero




Typ: neutral
Postów: 10
Zarejestrowany: Apr 2004
iBasic

kilka miesięcy temu znalazłem takową stronkę http://www.pyxia.com/ibasic.html
Po ogólnym zapoznaniu się z rozkazami tego języka, zachęciłem się do obadania tego czegoś i po kilku próbach udało mi się zrobić formę. Nie było to takie łatwe jak w VB. Edytorem rozmieszcza się kontrolki, potem klik na toolbox i kod formy jest w schowku. Wklejamy go do programu - najczęściej na samym początku.
Taka forma ma uchwyt taksamo (prawie)dowolnie nazywany jak w VB, czyli np. moja_forma. Trzeba to zdefiniować:
Def moja_forma: dialog (jest dialog i window, dialog to zwykła szara forma)
po definicji wkleja się kod formy ze schowka i trzeba do każdej formy dorobić suba obsługującego `uchwyt`, czyli przejmującego reakcje na klikania
np.
def d1: dialog
DIALOG d1,0,0,437,285,0x80C80080|@minbox,0,"Cookie manager",Handler
CONTROL d1,"L,,14,62,252,180,0x50800140|@CTLISTSTANDARD,1"
CONTROL d1,"E,,13,17,254,20,0x50810080,2"
CONTROL d1,"B,Dodaj,280,28,70,20,0x50010000,3"
CONTROL d1,"L,,281,63,145,179,0x50800140,4"
CONTROL d1,"B,Usu&ntilde;,354,28,70,20,0x50010000,5"
CONTROL d1,"B,Wyczysc,25,247,70,20,0x50010000,6"
CONTROL d1,"C,Spis cookie na dysku,6,46,266,230,0x50000007,8"
CONTROL d1,"C,Ciag znaków w nazwie cookie,6,2,266,40,0x50000007,9"
CONTROL d1,"C,Tych cookie nie kasuj,276,2,156,274,0x50000007,10"
CONTROL d1,"B,Zapamietaj,314,247,70,20,0x50010000,11"
CONTROL d1,"B,Odswierz,168,247,70,20,0x50010000,12"

no a obsluga formy to
sub handler
select @class
case @idcontrol
select @controlid
case 1: [...cośtam]
case 2    -||-
endselect
return

cały program, wygląd edytora i wynik dzialania za chwilke umieszcze na stronie http://sapero.no-ip.com/ib/ibasic.htm

[Post edytowany dnia 14-04-2004 14:17 przez sapero]

02-04-2004 22:52
Pokaż profil sapero  Wyślij email do sapero   Odwiedź stronę sapero       5309745
Jelcyn
Admin forum




Typ: admin
Postów: 895
Zarejestrowany: Apr 2002

szkoda, że nie ma wersji dla Linuxa. Mogę artykuł z tej strony zamieścić w najnowszym VBMagaizne ??


_____________________________________________
Jelcyn
vb4all(małpka)canpol.pl
http://www.coderscity.pl/no-vb4all * http://www.jelcyn.com

13-04-2004 12:50
Pokaż profil Jelcyn  Wyślij email do Jelcyn   Odwiedź stronę Jelcyn       270849979    6237704
sapero




Typ: neutral
Postów: 10
Zarejestrowany: Apr 2004

pewnie że możesz, tylko nie kopiuj na ślepo bo tam jest pełno ortografów

Mam starą wersję tego interpretera, czekam aż wyjdzie wersja PRO, ponieważ jak zapewnia autor Paul - jest o wiele szybsza (jak C). Wersja standard wprawdzie kompiluje programy, ale jest w nich jakiś interpreter który w razie błędu wywala okienko z numerem linii z błędem :/ więc taki exe nie ma prawa być szybkim, a skompilowany program pod windows (bez DirectX) zajmuje conajmniej 300KB. Są 3 tryby kompilacji:
1. windows
2. windows + directx
3. console (bez możliwości obsługi okienek)

Jest nawet specjalnie napisany dla iB - exe compressor który zmniejsza kod wynikowy do ok. 180KB, ale nie można każdego programu kompresować bo nie jest to wygodne

PS. dzisiaj zalogowałem się bez problemów
Gdybyś miał jakieś pytania odnośnie iB to zapraszam

13-04-2004 14:24
Pokaż profil sapero  Wyślij email do sapero   Odwiedź stronę sapero       5309745
Jelcyn
Admin forum




Typ: admin
Postów: 895
Zarejestrowany: Apr 2002

mnie teraz interesują takie klony VB, ale tylko dla Linuxa (a najlpeiej, aby był wieloplatformowy tj. windows+linux). Jedyne pytanie jakie mam to: kiedy będzie wersja pod Linuxa ;-)
Twój text wrzuce do VBMagazine, niech inni też znają klony VB, bo nie każdy czyta to forum


_____________________________________________
Jelcyn
vb4all(małpka)canpol.pl
http://www.coderscity.pl/no-vb4all * http://www.jelcyn.com

13-04-2004 14:36
Pokaż profil Jelcyn  Wyślij email do Jelcyn   Odwiedź stronę Jelcyn       270849979    6237704
sapero




Typ: neutral
Postów: 10
Zarejestrowany: Apr 2004
c.d.

Witam ponownie

Jestem szczęśliwym posiadaczem wersji PRO od kilku dobrych miesięcy (wtedy 99$ a teraz 69$)

Naprawdę jest wielka różnica w szybkości; dodatkowo składnia języka jest lepsza - wywodzi się z języka C (takjakby next generation). Przykładowo obliczając silnię 20000 na athlonie 2.1GHz - 61s z wynikiem dokładnym co do cyferki (77338 cyfr)

Co można: tworzyć dll'e, używać callback'ów, pisać wstawki w assemblerze:

_asm
extern MessageBoxA
invoke MessageBoxA, 0, body, caption, 0
_endasm

można dodawać swoje rozkazy do istniejącego już zbioru, kożystać z dobroci shellowego objektu COM:

CoCreateInstance(_CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, _IID_IShellLinkA, psl)
SET_INTERFACE psl, IShellLinkA
psl->SetArguments("/hide /tray" )
[...]
obsługiwane są oba rodzaje odwołań do funkcji: stdcall i cdecl (czyszczenie stosu po powrocie z funkcji)
można debugować swoje program spod IDE gdy stwarzają problemy; preprocesor pozwala na includowanie innych plików (np z deklaracjami funkcji api):

$include "windows.inc" :' w tym pliku też jest include
$include "mojefunkcje.inc"

jednym słowem można wszystko napisać. Nie jest to taki ogólnie pojęty basic, który potrafi tylko przypisywać wartości zmiennym.

Wprawdzie programuję od wielu lat, począwszy od ZX81, ale na teraźniejszch maszynach jestem mniejwięcej szczebelek ponad lamerem - około pół roku programowania/nauki

Ostatnie projekt nad którym pracuję: sniffer dla win2000 i xp
Możecie ściągnąć i przejżeć struktórę programu. Jest w nim subclassing ListView (kolorowanie zbanowanych hostów na czerwono), sortowanie listview po kliknięciu na kolumnę sysheadera, cachowanie nazw hostów, coś podobnego do invigilatora z gg (ip<-->hostname); jest również whois
http://free.of.pl/s/sapero/sniffer.jpg
http://free.of.pl/s/sapero/sniffer.zip

a co najważniejsze: programy są kompilowane do czystego assemblerka z pewną przyjętą regółą (parser). Nie jest to bardzo wydajne:

mov eax, dword[jakaś zmienna]
mov edx,[eax]
push edx
call funkcja

ale nie ma się co przejmować. Najmniejsze exe/dll mają 7KB (w tym kilkanaście gotowych funkcji np. do heapu). Kolejne funkcje są dodawane dynamicznie w zależności czy kożystamy z nich w swoim programie

Kompilacja jest kilkustopniowa: parser tworzy plik .a z lusterkiem naszych wypocin w kodzie assemblera. Potem GoRC robi .res jeśli mamy jakieś dodatki typu ikony. Za nim standardowo NASM i linker

DirectX - podstawowy pakiet ibasic ma tylko commandpack dla 2D, 3D trzeba sobie extra dokupić, albo samemu napisać bibliotekę

gorąco polecam

IBasic ma naprawdę dobre zaplecze, często są uaktualnienia, bugfixy; teraz szykuje się wielki boom: http://www.pyxia.com/community/viewtopic.php?t=8994

--------
ten extra exepacker to nieporozumienie - chodziło o zwykłego upx

02-01-2005 15:17
Pokaż profil sapero  Wyślij email do sapero   Odwiedź stronę sapero       5309745
Jelcyn
Admin forum




Typ: admin
Postów: 895
Zarejestrowany: Apr 2002

ja proponuję każdemu wahającemu się zakupienie wersji PRO już teraz. Dlaczego? Bo dolar strasznie tani a kiedyś w końcu musi podrożeć (jak kupowalem legalną Opere to dolar był chyba po 4.2 a teraz jest po 2.98)


_____________________________________________
Jelcyn
vb4all(małpka)canpol.pl
http://www.coderscity.pl/no-vb4all * http://www.jelcyn.com

02-01-2005 15:22
Pokaż profil Jelcyn  Wyślij email do Jelcyn   Odwiedź stronę Jelcyn       270849979    6237704
Wszystkich odpowiedzi: 5 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1