The problem I see with that is that VS has different libraries and so it may be necessary to rewrite parts of the source code to implement new functionalities. Since this code is under development (not by me), I want to stay out of it as much as possible. If I could compile everything, including the expected libraries, in VS, I agree that would be the safest approach -- in particular, it would guarantee compatibility between the calling C# program and the dll. But the interface functions of the dll only invoke translation operations on files or data, and so it really isn't necessary for it to be managed, is it? I think not. The implementation of the dll could be a black box with its own memory management and algorithms, and could provide just the handful of functions needed for translation. I'm just thinking out loud. I believe I have seen in the documentation that it is possible to call unmanaged code from managed code. I just have to read further for the details and pros and cons. Thanks for the comments. --le ----- Original Message ----- From: "Dave" <davidct1209@xxxxxxxxx> To: <programmingblind@xxxxxxxxxxxxx> Sent: Thursday, May 20, 2010 8:12 PM Subject: Re: C flavors: peaceful coexistence??? Though I'm not familiar with MSYS, you likely have a few options: One way .Net applications access native win32 dll's is through something called p-invoke. http://msdn.microsoft.com/en-us/magazine/cc164123.aspx among other resources describe this technique. A step up from this would be to use COM and implement a COM server for your unmanaged code which can be translated to managed code with some included VS tools. Of course, now that I briefly google MSYS, it looks like it tries to achieve a bourne shell with unix like tools, but still has facilities to compile dll's. http://www.mingw.org/wiki/FAQ If you are serious about writing for Windows, I'd bite the bullet and compile everything including unmanaged code within VS. On 5/20/10, qubit <lauraeaves@xxxxxxxxx> wrote: > Before I invest too much time in trial and error, I want to ask those who > have experience with .NET programming whether it is possible for a C# > program to call functions in a DLL written in C and compiled with MSYS. > The > answer is probably no, but I have to ask. If the answer is yes, my job > will > be easy. If no, I need to know what, if any, changes need to be done to > the > source code for the library to make it compatible, and whether I need to > compile it using VS (horrors, as VS's C++ compiler is not intended for use > on C). > Or are there libraries that I can link to the C code in MSYS to make it > compatible as a DLL? > > Given that there are many DLL's that are used by many programs, I am > thinking I probably don't have much to worry about. Am I right? Is > Windows > actually more user friendly to program than people make it out to be? > > Thanks much in advance for any comments. > --le > > > __________ > View the list's information and change your settings at > //www.freelists.org/list/programmingblind > > __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind