Hi Joe,<br /><br /> Just wanted to let you know that I opened <a href="https://github.com/openmicroscopy/bioformats/pull/63">this pull request</a> integrating your itkBioFormatsImageIO.cxx so hopefully it will make it to the main Bio-Formats repository soon.<br /><br /> That branch also includes improved CMake support for Release/Debug builds and a few minor fixes.<br /> <br /> If any other issues come up, just let us know. Thank you again for your contribution!<br /><br />- Mark<br /><br />On 05/02/12, Joe Ping-Lin Hsiao  <phsiao@cs.unc.edu> wrote:<br />> I am glad to know it's working on your side as well. Looking forward<br />> to seeing it integrate into the official release.<br />> <br />> Thanks,<br />> Joe<br />> <br />> On Tue, May 1, 2012 at 6:58 PM, Curtis Rueden <ctrueden@wisc.edu> wrote:<br />> > Hi Joe,<br />> ><br />> > Thank you very much for investigating, and sending a patch. We really<br />> > appreciate it. In the meantime, I did some digging of my own and concluded<br />> > that the previous code must never have worked correctly on Windows (unless<br />> > using gcc via Cygwin for the POSIX functions). So your work is definitely<br />> > valuable.<br />> ><br />> > Mark Hiner, one of the main BF-ITK developers, looked at your solution and<br />> > says it seems to be working well, so we will integrate it into the official<br />> > version shortly. However, I am traveling until next Monday, so it will be a<br />> > little while before you hear back from me again. But we'll keep you posted!<br />> ><br />> > Thanks again,<br />> > Curtis<br />> ><br />> ><br />> ><br />> > On Fri, Apr 27, 2012 at 5:47 PM, Joe Ping-Lin Hsiao <phsiao@cs.unc.edu><br />> > wrote:<br />> >><br />> >> Curtis,<br />> >><br />> >> I modified bf-itk-pipe source so that it compiles and works on Windows<br />> >> 7 64bit. What I did was replacing Linux system calls to the ones that<br />> >> work on Windows and fixing the code which depends on new line<br />> >> characters (Windows uses '\r\n' instead of just '\n').<br />> >><br />> >> All I changed is just one file: itkBioFormatsImageIO.cxx, and I have<br />> >> attached the modified version. Search for '#ifdef WIN32' to see what<br />> >> the modifications are.<br />> >><br />> >> Thanks,<br />> >> Joe<br />> >><br />> >> On Mon, Apr 16, 2012 at 1:25 PM, Joe Ping-Lin Hsiao <phsiao@cs.unc.edu><br />> >> wrote:<br />> >> > Hi Curtis,<br />> >> ><br />> >> >> While we have not seen such compile errors per se, Windows support is<br />> >> >> definitely the least well tested. We have historically had a lot of<br />> >> >> difficulty getting the Bio-Formats ITK plugin (all three iterations of<br />> >> >> it,<br />> >> >> not just the pipes version) working in Windows at all. So it is not too<br />> >> >> surprising that it is not working for you now.<br />> >> ><br />> >> > May I ask what develop environment you used on Windows? I got the same<br />> >> > errors from both Visual Studio 2008 and Mingw with Cygwin. I also<br />> >> > noticed that Bio-Formats website has 32bit BF-ITK binary for download.<br />> >> > I need a 64bit version so I can't use it, but it's still good to know<br />> >> > how it was built.<br />> >> ><br />> >> >> If you do decide to investigate further and have any questions about<br />> >> >> it,<br />> >> >> please do not hesitate to ask!<br />> >> ><br />> >> > I fixed those errors by using _pipe(), _write(), and _close() from<br />> >> > <io.h>. The library itself compiled fine. But when load images at run<br />> >> > time, I got this error:<br />> >> ><br />> >> ><br />> >> > \src\bioformats\components\native\bf-itk-pipe\itkBioFormatsImageIO.cxx:229:<br />> >> > BioFormatsImageIO: ITKReadImageInformation error:<br />> >> > The handle is invalid<br />> >> ><br />> >> > The code before where this error happens is:<br />> >> ><br />> >> > int m_Pipe[2]; // Declared in<br />> >> > BioFormatsImageIO.h by me.<br />> >> > ...<br />> >> > _pipe( m_Pipe, 512, O_BINARY ) // This is my Windows version of pipe()<br />> >> > m_Process = itksysProcess_New();<br />> >> > itksysProcess_SetCommand( m_Process, m_Argv );<br />> >> > itksysProcess_SetPipeNative( m_Process, itksysProcess_Pipe_STDIN,<br />> >> > (itksysProcess_Pipe_Handle*)m_Pipe );<br />> >> > itksysProcess_Execute( m_Process );<br />> >> ><br />> >> > m_Pipe has '3' and '4' after the _pipe(), so I think they were setup<br />> >> > fine. Any idea?<br />> >> ><br />> >> > Thanks,<br />> >> > Joe<br />> ><br />> ><br />> _______________________________________________<br />> ome-users mailing list<br />> ome-users@lists.openmicroscopy.org.uk<br />> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users<br /><br /></phsiao@cs.unc.edu>