Ma forse non mi spiego ...

La if serve a fare il confronto e si scrive in quel modo (non si usa la strncmp) dato che è codice managed (.NET).

Anche la open e la write *non* hanno senso perché non sono utilizzabili con codice .NET.

Devi usare le classi di .NET per l'I/O.

In poche parole, se scrivi codice per .NET, devi studiare *prima* il framework e le sue classi e lasciare stare le funzioni del C++ nativo !

Spero che adesso ti metterai a studiare il framework con un buon libro perché altrimenti non potrai andare molto avanti ...