Announcement

Collapse
No announcement yet.

WIN32 is alive and well and Microsoft gives it even more honor than before

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • WIN32 is alive and well and Microsoft gives it even more honor than before

    Interesting article on microsofts website:

    https://docs.microsoft.com/en-us/win...-your-platform

    To quote the article (dated 11/04/2019):

    Win32 API. The Win32 API (also called the Windows API) is the original platform for native C/C++ Windows applications that require direct access to Windows and hardware. It provides a first-class development experience without depending on a managed runtime environment like .NET and WinRT. This makes the Win32 API the platform of choice for applications that need the highest level of performance and direct access to system hardware.
    Notice the description of the WIN32 API:

    provides a first-class development experience
    Win32 API the platform of choice for applications that need the highest level of performance and direct access to system hardware
    So all the code and tutorials about the WIN32 on the PB forums is not only not obsolete, but it now provides a "first class development experience" and it is the "platform of choice" for developers who want "performance".

    Chris Boss
    Computer Workshop
    Developer of "EZGUI"
    http://cwsof.com
    http://twitter.com/EZGUIProGuy

  • #2
    There is no doubt that Win32 is useful and can do many things but it cannot compete with Win64 when it comes to big data or sheer speed. Try and tear through 32 gigabytes of data in Win32 and you will grow old waiting for it to finish. I have over time made many of my tools n 32 bit and many of these were written in PB which work fine but as tasks get bigger, Win64 is the way to go.
    hutch at movsd dot com
    The MASM Forum

    www.masm32.com

    Comment


    • #3
      On my desktop machine, an HP-8200 with a 3.3 ghz i5 (quad core 2500), a SSD as my system drive, and running Windows 10 Pro 64-bit, a 32-bit version of BCX translates itself in 1.25 seconds. A 64-bit version of BCX translates itself in 1 second. It really depends on the application and its implementation whether you'll see much of a speed advantage.

      A 64-bit OS running a 64-bit application indeed can access a much wider address space. If I was doing video production or running some kind of AI, that would mean something. But in my little world, surfing the web, diddling with code, and playing a game or two doesn't require all that much.
      https://www.BcxBasicCoders.com
      BCX BASIC to C/C++ for Windows

      Comment


      • #4
        Cherry-picking much?

        To also quote the article:
        UWP, WPF, and Windows Forms.

        These platforms provide managed runtime environments (the Windows Runtime for UWP, and .NET for Windows Forms and WPF) with many benefits, especially in the areas of developer productivity, sophisticated and customizable UI, and application security. Because these frameworks support visual designers and UI markup for rapidly creating UI, they are particularly well-suited for line-of-business applications.

        [...]

        Using the Win32 API with C++ makes it possible to achieve the highest levels of performance and efficiency [...]. However, exercising such a level of control over your application's execution requires greater care and attention to get right, and trades development productivity for runtime performance.

        Here are a few highlights of what the Win32 API and C++ offers to enable you to build high-performance applications.

        * Hardware-level optimizations, including tight control over resource allocation, object lifetimes, data layout, alignment, byte packing, and more.
        * Access to performance-oriented instruction sets like SSE and AVX through intrinsic functions.
        * Efficient, type-safe generic programming by using templates.
        * Efficient and safe containers and algorithms.
        * DirectX, in particular Direct3D and DirectCompute (note that UWP also offers DirectX interop).
        So hands up, PBers. How many of you need these highlights on a daily basis?

        Don't get me wrong, Chris. I still use PB and therefore the Win32 API. But "times, they are a changin'".

        Comment


        • #5

          The Win32 Api is not just for 32bit coding

          https://www.pcmag.com/encyclopedia/term/win32

          James

          Comment


          • #6
            So hands up, PBers. How many of you need these highlights on a daily basis?
            Um, not exactly from that list. But,
            Here are a few highlights of what the Win32 API and C++ offers to enable you to build high-performance applications.
            raises a question. Does this mean that we could somehow use a UWP DLL in PowerBASIC?

            I found a UWP DLL that I wish I could incorporate into an app I'm writing. Not the end of the world if not possible. But, if possible, it might be worth doing the needed research.
            ... .... . ... . . ... ... .... . .. ... .... .. ... .... .. .... ..

            n6jah @ yahoo.com

            Comment


            • #7
              The problem is Microsoft has made 32 bit DLL's virtually worthless with 64 bit applications, especially the office suite. They have left me scrambling looking for a solution with COM DLL'd I have written in PB. I was never a fan of .NET or the lastest managed development platforms MS comes up with. They call the shots however.
              Radue Software -Software 100% Developed with PowerBasic

              Comment


              • #8
                I converted from Win x86 to x64 (must have app went x64 only) and the only difference I see, is that the binaries are larger.

                Comment


                • #9
                  Originally posted by Jeff Radue View Post
                  The problem is Microsoft has made 32 bit DLL's virtually worthless with 64 bit applications, especially the office suite. They have left me scrambling looking for a solution with COM DLL'd I have written in PB.
                  Note that you can call a 32-bit COM dll from a 64-bit application via a DllSurrogate.

                  https://jpsoft.com/forums/threads/us...-bit-tcc.9646/

                  This allows me to use 32-bit COM dlls from 64-bit PowerShell, and 64-bit CScript

                  Joe

                  Comment

                  Working...
                  X