Please Help With Testing
Blitz3D Forums/Blitz3D Beginners Area/Please Help With Testing
| ||
. Thanks to all who helped. Seems there was no need to run the app after all (oops!) Gabriel solved it pretty darned quickly! :) |
| ||
What is this 'app' and what does it install? |
| ||
Hi, The "Import Image" functionality seems to work fine on Win98se. There was no problem with different sizes (width,height). :) |
| ||
Thanks Bonestan :) @puki (and anyone who may have concerns regarding unknown download executables): The setup executable that is downloaded installs the application I need testing. This application, "LabelStar" is a simple utility designed to help design inlay covers for slimline DVD cases. This purpose isnt really relevant as it's only the importing of image files (to act as as cover art) where the MAV apparently occurs. It's not a ruse or a virus or anything, I've been on these forums a while now so that should be long enough at least to vouch that I am sincere about my blitz programming. What is installed: Heres a complete file breakdown of everything packaged in the installer: 1) Optional Start Menu Folders/Icons and Quicklaunch shortcuts. 2) Software Registry keys containing version information and installer details (Added by installer) 3) Required Libraries (Blitzsys.DLL Printer.DLL) 4) Runtime executable (LabelStar.exe) and icon (LabelStar.ico) 5) Required Media files (UI.png and Carat.bmp) 6) Text files (License information and "Read Me" notes) During Runtime, (when printing) temporary files are generated within the root install directory of the application itself but these files are erased as soon as they have been finished with (i.e. once printed) There are no further effects of installation. Also, the program collects or stores no data and utilises no internet capabilities. |
| ||
Alternatively.. there MAY be an issue with this function.... The only thing I can think that may be a problem is the locked buffers, but as to what the problem is, I really don;t know. Function RotateImageCorrectly() ;Subsititute for RotateImage or TFormImage where those functions fail due to floating point issues. Local X=ImageHeight(PictureHandle) Local Y=ImageWidth(PictureHandle) Local TempImage=CopyImage(PictureHandle) ResizeImage PictureHandle,X,Y Local SourceBuffer=ImageBuffer(TempImage) Local DestinationBuffer=ImageBuffer(PictureHandle) SetBuffer DestinationBuffer LockBuffer DestinationBuffer LockBuffer SourceBuffer Local XX,YY For XX=0 To X-1 For YY = 0 To Y-1 WritePixelFast XX,Y-YY,ReadPixelFast(YY,XX,SourceBuffer),DestinationBuffer Next Next UnlockBuffer DestinationBuffer UnlockBuffer SourceBuffer SetBuffer BackBuffer() FreeImage TempImage TempImage=False End Function During runtime, there is only EVER one PictureHandle image at a time, so it's Global and if it exists, it is Free'd before creation/loading a new one. |
| ||
Local Y=ImageWidth(PictureHandle) For YY = 0 To Y-1 WritePixelFast XX,Y-YY,ReadPixelFast(YY,XX,SourceBuffer),DestinationBuffer Next Isn't this going to write one pixel outside of the image dimensions when YY is 0? Typically, the readable/writeable area of an image is 0 to height-1, but you're inverting it here to work up the screen instead of down. So the loop should be For YY = 1 to Y Shouldn't it? |
| ||
Wow! How could I miss that?! Thanks a million, Gabriel ;) That was it after all! Even in Debug Mode, WritePixelFast wont give a verbose error message, just the MAV. This has been causing me grief for the last couple of days, I really can;t thank you enough! |