Huh wtf why change the gdiplus udf ? I made a version that you dont have to keep track of the objects that need to be disposed of before shutdown of the dll. But How do i use it ? All the functions are called in the same way the only one that is slightly changed is _GDIPlus_Startup() can take a parameter. Damn what the hell have you done to the start up ? See the following ; Syntax.........: _GDIPlus_Startup($fConsoleOut = False) ; Parameters ....: $fConsoleOut - Set true or False for feed b