Can I use 3rd parties in my C#/WPF application?

Posted on 2014-08-27
Last Modified: 2014-09-07
Hello experts,

I'm using three 3rd party software to develop my own application and all of them are open source such as:

MahApps.Metro at
Rhino at
log4net at

 Open Source concept seems a broad topic to me and it is not clear as far as copyright. if I decide to sell my product do I need to get a license from these providers or just giving credit and addressing them on my website would be enough? I even did contact one of the provider and his response only was that he is not a lawyer so he cannot advise me! but then said that I have to address them, which absolutely is right and fair. Yet , I'm not sure if I can sell my product. any idea?

Thank you,
Question by:akohan
    LVL 39

    Expert Comment

    by:Kyle Abrahams
    I'm also not a lawyer but be aware that there are actually many multiple open source licenses.

    If you're embedding them in your code I would think you should be okay, but best to check with a lawyer.
    LVL 74

    Accepted Solution

    "Open-source" does not mean "free", "free to use", "free to distribute" or anything else other than the source code is available for you to inspect. The opposite open source is closed source. Oracle's database software is closed-source:  Oracle doesn't let you look at it. You (or as has been mentioned, your lawyer) have to look at the license that each piece of software places its code under. The license is what dictates what you may or may not do with the software. Even closed-source applications have licenses which dictate what you may or may not do (or derive from) with the software.

    Shameless Star Wars ripoff:  Check the license, Luke   = )
    LVL 74

    Expert Comment

    by:käµfm³d 👽

    The term "open-source" has commonly been associated with free software because a majority of the time open-source software does actually end up being free. The global populace has morphed the term into "free" as a result of such.
    LVL 74

    Expert Comment

    by:käµfm³d 👽

    If you cannot locate a license for the software, and you can't get in touch with someone who owns the software (i.e. the source code), then your safest bet is to assume that you cannot use/distribute the software (i.e. their component(s)).
    LVL 55

    Assisted Solution

    by:Jaime Olivares
    Many software development companies avoid to use open source software because it may be more costly to analyze if it is legal to use it than paying few hundred dollars for a commercial product. Also, I have found that in average free-open-source products lack of good documentation. Maybe they rely on the fact that you can read and interpret the source code by yourself.

    Author Comment

    I did contact one of them and even they couldn't answer it and the rest even did not answer my email.
    So base on what you are saying the best bit is to write all the pieces myself or pay for them. right?
    LVL 55

    Expert Comment

    by:Jaime Olivares
    Sure, commercial software is a more reliable option. You just verified that. Regarding the decision of developing by yourself or buying, there are lots of factors to consider. If you don't have too much customization needs, you may compare your estimated total hours to develop by your hourly rate, versus the price tag.
    If you will need current or future customization, an in-house development may be justified.

    Author Closing Comment

    From what I understand, Open Source are not reliable neither as far as support nor from legal point of view. In general, not a reliable step toward  a reliable development. Yes, they are good for learning/academia.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
    Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
    In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…
    In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

    779 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    14 Experts available now in Live!

    Get 1:1 Help Now