Advertisement · 728 × 90

Posts by Michal Strehovský

Very cool!

3 months ago 0 0 0 0
Post image

.NET 11 (NativeAOT) on Windows ARM32!!

3 months ago 12 3 0 0
Sokol.NET Examples - Interactive WebAssembly Showcase Try 36 interactive WebAssembly examples showcasing Sokol.NET's cross-platform graphics capabilities. Run directly in your browser!

Samples all run in the browser with WASM: elix22.github.io/Sokol.NET/

4 months ago 5 2 0 0
GitHub - elix22/Sokol.NET: Cross-platform graphics framework for C# with .NET NativeAOT | Desktop • Mobile • Web | Direct3D • Metal • OpenGL • WebGL Cross-platform graphics framework for C# with .NET NativeAOT | Desktop • Mobile • Web | Direct3D • Metal • OpenGL • WebGL - elix22/Sokol.NET

Found Sokol.NET - C# bindings for the Sokol crossplat gfx framework. If you haven't heard about Sokol, it's a C header-only library to build crossplat gfx/audio apps (games). Sokol.NET wraps it for C# (Win/Linux/Mac/Android/iOS/WASM). Tons of samples. Also native AOT: github.com/elix22/Sokol...

4 months ago 12 4 1 0

Congratulations!!!

4 months ago 1 0 0 0
State of Native AOT in .NET 10 After 3 years since my previous article on Native AOT, let’s find out how far AOT compilation in .NET has come.

Nice article on the state of native AOT with the release of .NET 10: code.soundaranbu.com/state-of-nat...

4 months ago 30 10 0 0

:(. Well at least they added back (an option) to see seconds to the taskbar clock flyout. Maybe proper small icons will come back next.

5 months ago 2 0 0 0

I really hope the Windows UX team will not go this far. Clearly they are mac users so everything is possible

5 months ago 4 0 0 0
Post image

Sorry but the off-color corner of the new Word icon looks like a compression artifact when taskbar is set to small (and sorry but small & never combine & show labels is the only correct taskbar configuration on Windows, this is not macOS).

5 months ago 7 0 2 0

How? Typescript to CIL to native? Go for it. You can also just use stock native AOT. The advantage of bflat is really just no friction crosscompilation.

5 months ago 2 1 1 0
Advertisement
Post image

Cosmos Gen3: The NativeAOT Era and the End of IL2CPU? valentin.bzh/posts/3 #dotnet #osdev #csharp

5 months ago 10 4 0 1
Preview
.NET Native release and support policy | .NET Learn about .NET Native support and lifecycle policies.

You'd need to debug the compiler. Either try to find the thing that first triggered it yourself or try reaching out to the email address listed at dotnet.microsoft.com/en-us/platfo.... Make sure you're using the latest version of the .NET Native package.

9 months ago 0 0 1 0
Preview
Learn to create a Hello World UWP app with XAML and .NET 9 - UWP applications Use XAML with C# to create a simple Hello, world app that targets the Universal Windows Platform (UWP) and .NET 9 on Windows.

I recommend migrating to .NET 9, the UWP support is there now: learn.microsoft.com/en-us/window...

9 months ago 0 0 1 0
Preview
UWP Native compiler error · Issue #2212 · StackExchange/StackExchange.Redis I have a UWP project When I want build this solution in Release Configuration I got a below error 1>C:\Users\ssoroosh\.nuget\packages\microsoft.net.native.compiler\2.2.12-rel-31116-00\tools\Microso...

Usually this is some NuGet that targets NetStandard2.0 (so it can be consumed from .NET Native) but uses a very recent language version (NetStandard 2.0 only officially supports up to C# 7.4; things can be hacked to allow higher version but it's unsupported). E.g. github.com/StackExchang...

9 months ago 0 0 2 0

I'm glad you like them! I don't post on medium anymore so the latest things are at migeel.sk

9 months ago 0 0 0 0

I miss the early days of .NET

10 months ago 3 0 0 0

Ah, rookie mistake, this is how you get a very cursed notepad.exe: bsky.app/profile/mige...

10 months ago 1 0 0 0

If you don't want to retrain muscle memory and don't care for the new notepad: bsky.app/profile/mige...

10 months ago 1 0 0 0
Advertisement
Post image

After #flareon11 challenge 7, I got inspired to build tooling for #dotnet Native AOT reverse engineering.

As such, I built a #Ghidra Analyzer that can automatically recover most .NET types, methods and frozen objects (e.g., strings).

👉blog.washi.dev/posts/recovering-nativea...

11 months ago 14 3 0 0
Preview
Service.cs GitHub Gist: instantly share code, notes, and snippets.

A small template to write self-contained Win32 services in C# with NativeAOT: gist.github.com/jbevain/b295...

1 year ago 18 5 1 0

Ak bude mať Rusko spoločnú hranicu s Moldavskom tak tie mapy dlho aktuálne nebudú.

1 year ago 0 0 0 0

The default value for this property in the SDK is just wrong.

1 year ago 2 0 0 0
Preview
Writing a .NET Garbage Collector in C#  -  Part 3 Using NativeAOT to write a .NET GC in C#. The third part adds some tooling to inspect the objects stored on the heap.

I've published the third part of my series of articles about writing a .NET garbage collector in C#. In this one, we add a helper method to inspect the objects in memory, learning about thread modes and the DAC.

minidump.net/writing-a-ne...

#dotnet

1 year ago 16 4 0 0

Looking forward to read more about your GC adventures!

1 year ago 1 0 1 0

10/ Then add a MyGC_ prefix to all your UnmanagedCallersOnly methods and they should get exported without the prefix.

1 year ago 0 0 1 0

9/ You can write an MSBuild task that takes $(ExportsFile), reads all lines in it, and Regex.Replace(line, @"MyGC_(\w+)", "$1=MyGC_$1") and write back to $(ExportsFile). Have the MSBuild target run BeforeTargets=LinkNative.

1 year ago 0 0 1 0

8/ We want this instead:
EXPORTS
GC_Initialize=MyGC_GC_Initialize

1 year ago 0 0 1 0
Advertisement

7/ By default the DEF file that native AOT compiler creates for UnmanagedCallersOnly("MyGC_GC_Initialize") looks like this:

EXPORTS
MyGC_GC_Initialize

1 year ago 0 0 1 0

6/ That's possible solution one. Possible solution two involves munging the .def file that native AOT compiler creates so that we can use "If the name that you export differs from the name in the DLL, specify the export's name" from the EXPORTS docs.

1 year ago 0 0 1 0

5/ Like this:

EXPORTS
GC_Initialize=MyNativeAotDll.MyGC_Initialize

Put this in a shim.def file and run link.exe like this: `link /dll /def:shim.def /out:shim.dll /noentry`. This produces a DLL with GC_Initialize export that is forwarded to MyGC_Initialize in MyNativeAotDll.

1 year ago 0 0 1 0