.Net Framework 3.0

なんか、Vistaでは、Win32を使うよりも、オブジェクト指向API .Net Framework 3.0 を使おうということになっているみたいですね。(^^;

確かに、Win32って、ちょっとウインドウを出すだけでも、鬼のようにコーディングしないといけなかったし、APIの引数が鬼のように多かったり、挙動がいくつもあったりと、かなり骨が折れるものでしたが、それも過去のものになるのでしょうか?
一番適している開発言語は、C# みたいですね。。(^^;;

ちなみに、Macの Carbon で、空のウインドウを出すプログラムは、下記になるようです。
Carbon って、古いイメージがありますけど、これをみる限りは、そうでもないようですね。。

#include <Carbon/Carbon.h>

int main(int argc, char* argv[])
{
    IBNibRef 		nibRef;
    WindowRef 		window;
    
    OSStatus		err;

    // Create a Nib reference passing the name of the nib file (without the .nib extension)
    // CreateNibReference only searches into the application bundle.
    err = CreateNibReference(CFSTR("main"), &nibRef);
    require_noerr( err, CantGetNibRef );
    
    // Once the nib reference is created, set the menu bar. "MainMenu" is the name of the menu bar
    // object. This name is set in InterfaceBuilder when the nib is created.
    err = SetMenuBarFromNib(nibRef, CFSTR("MenuBar"));
    require_noerr( err, CantSetMenuBar );
    
    // Then create a window. "MainWindow" is the name of the window object. This name is set in 
    // InterfaceBuilder when the nib is created.
    err = CreateWindowFromNib(nibRef, CFSTR("MainWindow"), &window);
    require_noerr( err, CantCreateWindow );

    // We don't need the nib reference anymore.
    DisposeNibReference(nibRef);
    
    // The window was created hidden so show it.
    ShowWindow( window );
    
    // Call the event loop
    RunApplicationEventLoop();

CantCreateWindow:
CantSetMenuBar:
CantGetNibRef:
	return err;
}

何より、int main(int argc,char *argv[]) で始まっているのがいいです。(^^;;