World: r3wp
[Core] Discuss core issues
older newer | first last |
amacleod 28-Nov-2007 [8896] | I'm tring to open a .pdf from rebol script using "call" function. It works but i get that MSwindows console window poping up too. I know if you call the application (acrobat reader) at the same time you do not get the console window. any otehr wat to suppress the console from popping up? |
amacleod 29-Nov-2007 [8897x5] | This works: call "C:\Program Files\Adobe\Acrobat 6.0\Acrobat\acrobat.exe C:\Program Files\PDFS\file.pdf" |
What would be the rebol path notation of the above. I tried variations of this: call "/C/Program Files/Adobe/Acrobat 6.0/Acrobat/acrobat.exe /C/Program Files/PDFS/file.pdf", but I can not get it to work... | |
This will show the pdf with console: call %"/C/Program Files/ACI32/PDFS/X11070003.pdf" | |
This will start acrobat with no cosole: call %"/C/Program Files/Adobe/Acrobat 6.0/Acrobat/acrobat.exe" | |
But I can not combine them as I did with using windows file path notation | |
Henrik 29-Nov-2007 [8902] | AFAIK there is no way to supress the console window in R2. |
Oldes 29-Nov-2007 [8903x2] | >> to-rebol-file "C:\Program Files\Adobe\Acrobat 6.0\Acrobat\acrobat.exe" == %/C/Program Files/Adobe/Acrobat 6.0/Acrobat/acrobat.exe |
if you have PRO license, you should use ShellExecuteA routine from shell32.dll | |
BrianH 29-Nov-2007 [8905x3] | amacleod, try this: call [%"/C/Program Files/Adobe/Acrobat 6.0/Acrobat/acrobat.exe" %"/C/Program Files/PDFS/file.pdf"] |
If the application starts and returns immediately, the console will close before you get a chance to see it. I think acrobat is one of those programs. If you are opening this pdf in the free reader, I would seriously suggest upgrading to reader 8.1.1 for security reasons, and because it's better. | |
CALL will do the to-local-file translation for any REBOL files it is passed (even in that block above, though not in nested blocks), and even wrap the filenames in quotes just in case they have spaces in them. | |
amacleod 29-Nov-2007 [8908] | BrianH, Your suggestion above works. I had tried the same thing but without the block...stupid me. Thanks! |
Rod 5-Dec-2007 [8909] | Any binary parse wizards ever tried to tackle the on disk file format that postgresql uses to store row data? I'm looking through the docs trying to get a handle on how tough it is. http://www.postgresql.org/docs/8.1/static/storage.html and http://www.postgresql.org/docs/8.1/static/storage-page-layout.html give a fairly detailed starting place, plus the source of course but my C is so rusty I think reviewing the raw data is going to be easier. We are trying to recover some data that was deleted (marked for) by accident. We basically need to find the serial key value and associate it with a text value for each row so we can rebuild the table and not lose the relationships that key off that serial numeric value in other tables. There are some good examples of binary parsing in the rebol.org script library so I know rebol can help write out a text version of the two values if we can get a handle on the structures involved. I'm open to suggestions or advice, this is not critical but would be a nice win to recover the key data. |
Oldes 6-Dec-2007 [8910x4] | I'm quite interested and I may give it a try... but I don't know when |
but I have only Postgresql 8.0 I'm not sure how much it's different | |
the header is same | |
here is a basic... http://box.lebeda.ws/~hmm/rebol/pgsql-db.rthis reads the postrge's file per pages... but I'm not sure what to do with the data inside and have to do something else now | |
Rod 6-Dec-2007 [8914] | Oldes, thanks for getting us started on the postgresql data parsing! Thanks, Rod. |
Henrik 14-Dec-2007 [8915x2] | is it possible to get the name of the script that was run with 'do? |
from inside that script, that is | |
BrianH 14-Dec-2007 [8917] | system/script/path gets the directory of the script, and you can put the name of the script in its header with the File field. |
Henrik 14-Dec-2007 [8918x2] | ah yes, but it doesn't work if you 'do other scripts inside that script. I guess I'll figure out some other method. |
the goal is only to be able to relaunch the script. | |
BrianH 14-Dec-2007 [8920] | If script %a calls script %b, b's system/script/path is set to its directory, and b's system/script/parent/path is set to a's directory. |
Henrik 14-Dec-2007 [8921] | perhaps a quick routine to find the root script? |
BrianH 14-Dec-2007 [8922x2] | If we set b's File field to %b in its header, we can get that value for relaunching or whatever. |
x: system/script while [x: x/parent] [root-dir: x/path] | |
Henrik 14-Dec-2007 [8924x2] | does that work? x/parent keeps being an object here. |
perhaps also ask if x = x/parent | |
BrianH 14-Dec-2007 [8926x2] | The top parent is none. |
x will never equal a/parent. | |
Henrik 14-Dec-2007 [8928] | oh, I didn't get that before, but I do now. odd. |
BrianH 14-Dec-2007 [8929] | a/ -> x/ |
Henrik 15-Dec-2007 [8930x2] | I see the problem now. Or at least a problem: If you 'do the same script multiple times in the console, the system/script object depth increases. |
another note: parent equals none the same time as the script header does, so to properly check whether you really don't have a parent, if you want to see the header, you should check parent/header, not just parent. | |
BrianH 15-Dec-2007 [8932] | No, the script object depth only increases if the script depth increases. When a script ends, system/script is set to system/script/parent. |
Henrik 15-Dec-2007 [8933] | ok, now I'm wondering why the script depth would increase. |
BrianH 15-Dec-2007 [8934x2] | Is the script calling itself, or does it return and have an outer trampoline script call it again? |
Or is the script creating some functiona and objects and returning so the caller can use them, then being reloaded by the caller to do this all over again? I wrote a server application in 2000 that acted that way, with scripts migrating the data from the previous incarnation still in memory. | |
Henrik 15-Dec-2007 [8936] | the script calls 4 other scripts once. one of these contains an object that must know the name of the launched script. that's basically all. |
BrianH 15-Dec-2007 [8937] | Does the object need to know the name of its own script, the calling script, or the script that is calling the code in the object? |
Henrik 15-Dec-2007 [8938] | it needs to know the name of the launched script. there can be any number of levels down to the script that was used to launch the script containing the object. but I have solved the problem now. I was just wondering why the script object depth increased on each run of the main script. |
Graham 27-Dec-2007 [8939x5] | Any maths guys here? |
I need to map a pair from one coordinate system to another. | |
So, I have two pairs initially, specifying a top left and bottom right. eg. 4x26 => 38x729, and 234x355 => 600x62 So, I need a function that works like this remap 4x26 38x729 234x355 600x62 n1xn2 => n3xn4 that is, it takes the 2 sets of pairs as argument, and a new pair, and returns the value of the new pair mapped to the new coordinates. | |
I guess it's just linear algebra | |
What I am doing is taking two sets of pairs on a PNG image, and trying to map to the EPS image as postscript coordinates. | |
Gregg 27-Dec-2007 [8944] | Probably not something as simple as this, though, eh? remap: func [a-ul a-br b-ul b-br pt] [ res-x: pt/x / (a-br/x - a-ul/x) * (b-br/x - b-ul/x) + b-ul/x res-y: pt/y / (a-br/y - a-ul/y) * (b-br/y - b-ul/y) + b-ul/y as-pair res-x res-y ] (untested) |
Graham 27-Dec-2007 [8945] | looks close , but not right though as if i feed it one of the first two pairs, it should display one of the second pairs |
older newer | first last |