this post was submitted on 25 Jun 2023
4 points (100.0% liked)

Ask Experienced Devs

1262 readers
1 users here now

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 2 years ago
MODERATORS
 

I'm a back-end developer who wants to play with some desktop/front-end development.

I found a C++ library and started thinking what would be the best way to wrap this library in a way so that I can create a GUI in either C# or in Typescript.

What would you recommend?

Note: I'm trying to keep the question relatively vague because I want to get some ideas to try instead of finding the solution to my specific problem. I want to learn more about how others would approach such a problem. But I can provide more details, if necessary.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 2 years ago (4 children)

Not an easy task, but if your C++ library is DLL you can use interop to load and use it on C#. If the library is larger than just one DLL, then it goes even harder. https://learn.microsoft.com/en-us/dotnet/framework/interop/consuming-unmanaged-dll-functions

[–] canpolat 1 points 2 years ago (3 children)

Thank you for the response. To be honest, I'm a bit surprised that this is not an easy task. If I understand the documentation correctly, that means, I will have to create a C# wrapper for C++ methods. I was hoping to get the wrapping for free via some tooling. I found Emscripten that looks promising (for JS), but not sure that's any different.

[–] ishanpage 1 points 2 years ago* (last edited 2 years ago) (1 children)

You can do this with Emscripten. See here and here

[–] canpolat 1 points 2 years ago

Thank you. I saw those pages, but what I can do was not immediately clear. I was looking for some examples (probably there are some videos on YouTube). I will have some more time to dive into this soon. Maybe I'll hack around and see if it works for me.

load more comments (1 replies)
load more comments (1 replies)