Ĺadny brzuch
Chciałbym zrobić coś podobnego do takiego czegoś {$i nazwa pliku} tylko, że chciałbym żeby nazwa pliku została wczytana z jakiejś zmiennej. Jak to zrobić?
Chciałbym zrobić coś podobnego do takiego czegoś {$i nazwa pliku} tylko, że chciałbym żeby nazwa pliku została wczytana z jakiejś zmiennej. Jak to zrobić?
W ten sposob tego nie zrobisz. {$I} jest dolaczane jeszcze przy fazie wstepnej kompilacji, z tej prostej przyczyny nie zaakceptuje zadnej zmiennej (podobnie jak inne dyrektywy kompilatora)
Powiedz lepiej jaki efekt chcesz osiagnac.
Wiem, że w taki sposób tego nie zrobie.
Powiedz lepiej jaki efekt chcesz osiagnac.
Jest sobie TEdit na formie i chciałbym żeby po kliknięciu przycisku program wykonał instrukcje zawarte w pliku Edit1.Text + '.inc'.
Nie ma szans. Jak program ma Ci wykonać nieskompilowane instrukcje?
Nie ma szans Naprawde nie mam? :D
Jak program ma Ci wykonać nieskompilowane instrukcje?
Normalnie. Zależy jakie nieskomplikowane instrukcje. Ale co to ma do rzeczy?
Normalnie. Zależy jakie nieskomplikowane instrukcje. Ale co to ma do rzeczy? Kolega p1101 napisal nieskompilowane a nie nieskomplikowane...
Nie da rady bez kompilacji wykonac kodu. Jaki program wykona Ci kod chocbyfor i := 0 to 20 do MessageBox(0, PChar(i), '', 0);ktory jest pod postacia zwyklego tekstu?
Nie da rady. Chcesz zrobic cos a'la html albo php. Zrob sobie interpretera i wtedy sie baw we wlasne skrypty.
Zauwaz ze nawet skorki winampa 5 nie maja skryptow tekstowych, tylko jakis skompilowany /albo polskompilowany, nie wiem, nie zglebialem ich/ kod, notatnikiem go nie podejzysz.
No tak... no to co mi poradzicie? Muszę mieć wszystkie polecenia zapisane w kodzie źródłowym czy jest na to jakiś inny sposób?
Tu wyjściem może być interpreter prostego języka skryptowego. Zależy jakie fragmenty kodu w tych plikach byłyby zawarte i czemu konkretnie ma to służyć. Jeśli to zaledwie parę linijek prostych instrukcji, tym bardziej wywołania jakiś funkcji (wtedy można zastosować rzutowanie metod) to jest to do rozwiązania :)
Użytkownik p1101 edytował ten post 08 luty 2007, 19:56
A jeżeli już sie bardziej uprzesz możesz skorzystać chociażby z bibliotek DLL:D
A jeżeli już sie bardziej uprzesz możesz skorzystać chociażby z bibliotek DLL:D
Dyrektywa $i zdaje sie dolacza plik zrodlowy do projektu i zdaje sie ze o 'dolaczenie' takiego pliku chodzi autorowi tematu, wiec dll raczej odpada...
są dwa sensowne (darmowe i sprawne) interpretery jezyka prawie-jak-ObjectPascal
-> JvInterpreter z pakietu JVCL
-> RemObjects PascalScript
z pierwszym nie miałem praktycznie żadnego kontaktu, w drugim trochę siedziałem ... i w mojej opini jest dosyć "sredni". Z jednej strony ma sporo fajnych mozliwosci (teoretycznie). Z drugiej, mozliwosci mozliwosciami a bledow duzo. Zwlaszcza ze w niektorych sytuacjach (wywolywanie funkcji [nie metod!] ) jest wykonywane z uzyciem asm i niestety potem dzieją się dziwne żeczy ;) W specyficznych sytuacjach dochodzilo do tego ze wewnatrz metody pewnej formy warunek self = nil byl prawdziwy.
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Chciałbym zrobić coś podobnego do takiego czegoś {$i nazwa pliku} tylko, że chciałbym żeby nazwa pliku została wczytana z jakiejś zmiennej. Jak to zrobić?
W ten sposob tego nie zrobisz. {$I} jest dolaczane jeszcze przy fazie wstepnej kompilacji, z tej prostej przyczyny nie zaakceptuje zadnej zmiennej (podobnie jak inne dyrektywy kompilatora)
Powiedz lepiej jaki efekt chcesz osiagnac.
Wiem, że w taki sposób tego nie zrobie.
Powiedz lepiej jaki efekt chcesz osiagnac.
Jest sobie TEdit na formie i chciałbym żeby po kliknięciu przycisku program wykonał instrukcje zawarte w pliku Edit1.Text + '.inc'.
Nie ma szans. Jak program ma Ci wykonać nieskompilowane instrukcje?
Nie ma szans Naprawde nie mam? :D
Jak program ma Ci wykonać nieskompilowane instrukcje?
Normalnie. Zależy jakie nieskomplikowane instrukcje. Ale co to ma do rzeczy?
Normalnie. Zależy jakie nieskomplikowane instrukcje. Ale co to ma do rzeczy? Kolega p1101 napisal nieskompilowane a nie nieskomplikowane...
Nie da rady bez kompilacji wykonac kodu. Jaki program wykona Ci kod chocbyfor i := 0 to 20 do MessageBox(0, PChar(i), '', 0);ktory jest pod postacia zwyklego tekstu?
Nie da rady. Chcesz zrobic cos a'la html albo php. Zrob sobie interpretera i wtedy sie baw we wlasne skrypty.
Zauwaz ze nawet skorki winampa 5 nie maja skryptow tekstowych, tylko jakis skompilowany /albo polskompilowany, nie wiem, nie zglebialem ich/ kod, notatnikiem go nie podejzysz.
No tak... no to co mi poradzicie? Muszę mieć wszystkie polecenia zapisane w kodzie źródłowym czy jest na to jakiś inny sposób?
Tu wyjściem może być interpreter prostego języka skryptowego. Zależy jakie fragmenty kodu w tych plikach byłyby zawarte i czemu konkretnie ma to służyć. Jeśli to zaledwie parę linijek prostych instrukcji, tym bardziej wywołania jakiś funkcji (wtedy można zastosować rzutowanie metod) to jest to do rozwiązania :)
Użytkownik p1101 edytował ten post 08 luty 2007, 19:56
A jeżeli już sie bardziej uprzesz możesz skorzystać chociażby z bibliotek DLL:D
A jeżeli już sie bardziej uprzesz możesz skorzystać chociażby z bibliotek DLL:D
Dyrektywa $i zdaje sie dolacza plik zrodlowy do projektu i zdaje sie ze o 'dolaczenie' takiego pliku chodzi autorowi tematu, wiec dll raczej odpada...
są dwa sensowne (darmowe i sprawne) interpretery jezyka prawie-jak-ObjectPascal
-> JvInterpreter z pakietu JVCL
-> RemObjects PascalScript
z pierwszym nie miałem praktycznie żadnego kontaktu, w drugim trochę siedziałem ... i w mojej opini jest dosyć "sredni". Z jednej strony ma sporo fajnych mozliwosci (teoretycznie). Z drugiej, mozliwosci mozliwosciami a bledow duzo. Zwlaszcza ze w niektorych sytuacjach (wywolywanie funkcji [nie metod!] ) jest wykonywane z uzyciem asm i niestety potem dzieją się dziwne żeczy ;) W specyficznych sytuacjach dochodzilo do tego ze wewnatrz metody pewnej formy warunek self = nil byl prawdziwy.