Page 28 of 29 FirstFirst ... 182526272829 LastLast
Results 1,081 to 1,120 of 1132

Thread: Getting the ball rolling. Which VB6 projects are you working on?

  1. #1081

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by LorinM View Post
    Writing several app at the same time. That is why I am so confused all the time.
    Party Cam Kiosk - takes a sequence of webcam photos, applies effects and prints out a photo strip, 2-up, 4-up and one-up pages color or B&W plus many fun options. 45K + code, more of comments. about 99% complete (runs but adding features)
    DesignCAD - a user friendly CAD program that generates g-Code to operate a desktop CAD machine for cutting out and carving. 50K + lines of code + more of comments. About 80% complete. runs but adding features.
    Story Teller - user programmable using bookmarks. reads text aloud selectable voices, plays music of many formats, open multiple picture windows with effects and/or movie screens. With many more options. 80K+ lines of code, more of comments. about 95% complete (runs but adding features)
    Would like to see these, post a picture or two please!

    Also, would like to use them when they become usable, please keep us posted.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  2. #1082
    Fanatic Member gaouser's Avatar
    Join Date
    Mar 2022
    Location
    World:\Turkey\User32.DLL
    Posts
    512

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by yereverluvinuncleber View Post
    Fascinating UI.
    UI screams Chillkat Controls and VBAccellerator
    MicrosoftWindowsxp
    Professional

    was the peak Windows version not gonna lie

  3. #1083
    Fanatic Member gaouser's Avatar
    Join Date
    Mar 2022
    Location
    World:\Turkey\User32.DLL
    Posts
    512

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by gaouser View Post
    EveryDiscord, A FOSS Discord client for Windows XP based on VB6.
    Attachment 194082
    Relies on Discord Tokens(Ok may sound shady. but how are you going to pass OAuth2? You need a modern browser[Supermium is excluded] to interpret the links that Discord emails you to vertificate)
    I sent my first ever message from it, currently working on a way to fetch them, ComCtl32(CC 5) ListView is closest to a text-bubble view. It's visually smilar as Discord has no drawn-bubbles on the view.
    Based on wqweto's TLS 1.3 AsyncSocket. Alot of thanks to him for making this project happen.

    Made in a VM(XP Professional x86 SP3), Tiny11 24H2 as host. 27" Monitor, and a desktop with 32 GBs of RAM(though doesn't matter here due to x86)
    Trying to use WSS in VB6 is whole another pain...
    MicrosoftWindowsxp
    Professional

    was the peak Windows version not gonna lie

  4. #1084

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Just added a new clapper on the alarm bell of the VB6 steampunk clock/calendar that controls or rather toggles, the quarterly chimes. the clapper on the right now solely toggles the alarms sounding.



    I haven't added a new UI element to this particular design for more than ten years... of course, the UI design follows on from the old Yahoo widget/Konfabulator widget of the same name. I know I am just cloning and re-using an existing graphical element, so not even that new.
    Last edited by yereverluvinuncleber; Feb 23rd, 2025 at 05:47 PM.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  5. #1085

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Come on chaps, what are you working on? I'd like to know what JBPro, SDO, Olaf and Faf specifically are working on...

    I have been becoming familiar with TwinBasic by keeping two parallel copies of my code in synch. I learnt about its few limitations and its amazing strengths by working with and finding workarounds for any issues. I stopped using TwinBasic for a while as I had some solid bugs to resolve, I didn't want to dilute my effort on two codebases and am still more familiar and productive in VB6.

    This meant that I stopped keeping my code in synch. with TB and thus my TB version of my clock/cal is now out-of-date.

    I aim to catch up by re-synching from scratch with a new and more recent version of TB to test TwinBasic and the bugs I have raised - as Wayne requests.

    I am definitely settling into the concept that TwinBasic works and is a real future for VB6. The next step for me, is to figure out how to get RC5/RC6 working in 64bit mode as this provides a future for my apps. Looking for help from Olaf/JBPro in this respect as the requirement becomes more and more urgent as time progresses.

    What are you working on chaps?
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  6. #1086
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    My latest project was direct access to sensors on tablets and laptops through ISensorManager/ISensor. The demo is an Ambient Light Monitor, watching the input from that sensor:

    Name:  alm2.jpg
Views: 685
Size:  54.5 KB

    https://github.com/fafalone/AmbientLightMonitor

    The repo also has binary builds because as the finished UI suggests I thought it might be useful, e.g. as a way to monitor whether someone turns the lights on while you're away.

    For a successor, my hope was that I could, as documented, access GPS sensors through the same interface, but despite the fact my tablet definitely has GPS and other apps can access it, I'm getting an error indicating no GPS sensor was found. They might have entirely locked it up behind WinRT.


    ---

    Then just a minute ago I posted an updated 64bit compatible port of Ordo PDF Reader with the changes from the latest VB6 version.

    ---

    Finally a couple weeks ago I posted one I know you'll love, my long overdue Windows UI Ribbon Advanced Demo. Tons of new features, new controls, and bonus features implementing various RichEdit functionality and hijacking the MS Office RichEdit with Color Emoji support.

    There's pics in the announcement post here on VBF, or you can go straight to the project repository. Still haven't changed my mind about not backporting it or the others beyond the Intro Demo to VB6.

    ---

    In possibly upcoming project news; I also might release an OCX wrapper of Wayne's WebView2 control for twinBASIC, aimed at VB6. oleexp.tlb has the WebView2 interfaces but there's a lot more to a functional control than that, so I thought it easier to just make the existing one accessible. It would be an open source alternative to Olaf's closed source RC6 implementation, and also make it accessible to VBA64.

  7. #1087
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    If anyone wants to test the WebView2 control I'm working on,

    https://github.com/fafalone/ucWebView2

    Initial test build is working in VB6:

    Name:  wv2vb.jpg
Views: 650
Size:  40.8 KB

    Also in VBA 64bit.

  8. #1088
    Fanatic Member gaouser's Avatar
    Join Date
    Mar 2022
    Location
    World:\Turkey\User32.DLL
    Posts
    512

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Dang it EveryDiscord may get delayed a little bit. The reason is the TLS library diffrence between the WSS lib and my code.
    MicrosoftWindowsxp
    Professional

    was the peak Windows version not gonna lie

  9. #1089
    Fanatic Member
    Join Date
    Jun 2016
    Location
    España
    Posts
    588

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by fafalone View Post
    If anyone wants to test the WebView2 control I'm working on,

    https://github.com/fafalone/ucWebView2

    Initial test build is working in VB6:

    Name:  wv2vb.jpg
Views: 650
Size:  40.8 KB

    Also in VBA 64bit.
    Works perfectly in TB.
    You can attach an example in vb6.
    thanks to you and Wayne for the work.

  10. #1090
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by yokesee View Post
    Works perfectly in TB.
    You can attach an example in vb6.
    thanks to you and Wayne for the work.
    If you're in tB you should just use the package directly... References->Available Packages->Import from file->WebView2WDLPackage.twinpack

    The ActiveX ocx control from WebView2Control.twinproj is for VB6/VBA, where there's no option to avoid an ocx besides redesigning the base control to use oleexp and the normal UC framework. I guess you *can* use it in tB... But why add a dependency with registration required and/or an extra layer, when you don't need to.
    Last edited by fafalone; Mar 8th, 2025 at 09:36 AM.

  11. #1091
    Fanatic Member
    Join Date
    Jun 2016
    Location
    España
    Posts
    588

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    I can't compile the control.
    Problem with the Microsoft Visual Basic 5.2 Extensibility reference.
    I added the Microsoft Visual Basic 6.0 Extensibility but I get a lot of errors.
    Regards

  12. #1092
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    I uploaded the wrong file, hold on.

    Edit: Ok, I put up the right file for the OCX build version now. It doesn't have any outside dependencies, just tB packages and standard Windows files (and obviously WebView2 installed).

    ucWebView2.zip (too big to upload uncompressed because tB is currently inefficiently including 2 copies of my WDL package).
    Last edited by fafalone; Mar 8th, 2025 at 10:21 PM.

  13. #1093

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by fafalone View Post
    My latest project was direct access to sensors on tablets and laptops through ISensorManager/ISensor. The demo is an Ambient Light Monitor.
    Love this. I'd love to be able to incorporate this code to allow me to select a light/dark mode in some of my app.s according to ambient light available. Unfortunately, I presume that most desktops will not be equipped with such a sensor.

    How else would you expect this application to be used?
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  14. #1094

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by gaouser View Post
    EveryDiscord
    Good name.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  15. #1095
    Fanatic Member Episcopal's Avatar
    Join Date
    Mar 2019
    Location
    Brazil
    Posts
    600

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by fafalone View Post
    I uploaded the wrong file, hold on.

    Edit: Ok, I put up the right file for the OCX build version now. It doesn't have any outside dependencies, just tB packages and standard Windows files (and obviously WebView2 installed).

    ucWebView2.zip (too big to upload uncompressed because tB is currently inefficiently including 2 copies of my WDL package).
    Hi faf... TwinBasic compiles OCX?

  16. #1096
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    It does. Both 32bit and 64bit. You can import and existing VB6 control project or choose "ActiveX Control" from the New Project dialog.

    What I like in particular is you have full control over all the details in tB... the project/typelib GUID, typelib version, and class/interface/events GUIDs from the controls/classes; it doesn't have preset options equivalent to VB6 on those, but VB6's 'no/project/binary compatibility' was always confusing; and you also have an option to compile but not register unlike VB6.

  17. #1097

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Working on full form resizing by dragging the bottom corner of the form so that all controls grow in proportion. This is my method of handling high DPI screens. I have this working on most of the preference screens for my gauges, I just do not have it on my older app.s, fixing that now.



    I have it working on the prefs screens of most of my gauges but not in my older apps. Just fixing that now.

    The form on the left is the standard default form generated by VB6 at 10,500 twips width, the one on the right has been expanded to 175% by dragging the bottom corner.

    I am using subclassing to trap the WM_EXITSIZEMOVE message and triggering a custom resize event for resizing the controls only - when the drag is complete.

    PS. Had to retype all this as the forum lost the textual updates.
    Last edited by yereverluvinuncleber; Mar 14th, 2025 at 05:16 AM.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  18. #1098
    Fanatic Member
    Join Date
    Aug 2016
    Posts
    702

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by fafalone View Post
    I uploaded the wrong file, hold on.

    Edit: Ok, I put up the right file for the OCX build version now. It doesn't have any outside dependencies, just tB packages and standard Windows files (and obviously WebView2 installed).

    ucWebView2.zip (too big to upload uncompressed because tB is currently inefficiently including 2 copies of my WDL package).
    Attachment 194366

    Name:  QQ__20250316112711.jpg
Views: 360
Size:  26.4 KB
    Last edited by xxdoc123; Mar 15th, 2025 at 11:33 PM.

  19. #1099
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Should create an issue in the project repo instead of here; please include whether other WebView2 things work, like the built in tB samples and RC6's WebView.

  20. #1100
    PowerPoster
    Join Date
    Aug 2010
    Location
    Canada
    Posts
    2,724

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Finally did something with some visuals

    Name:  2025-03-16_15-29-16.jpg
Views: 322
Size:  35.4 KB

    Project is here:

    https://www.vbforums.com/showthread....e-Markup-Tools

  21. #1101

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    That's good. I can see myself using that.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  22. #1102

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Some progress on my icon settings tool for my VB6 dock program Steamydock.



    It now resizes more or less how I want it to and every control behaves itself when resized, as far as it possible for VB6 controls to do so. The check boxes in particular don't resize well but - acceptable.

    It is a straightforward VB6 form with no RC6 involvement, just reads the PNG, JPG, ICO files as displayed in the dock and allows you to edit a dock entry properties. Would make a good candidate for testing with TwinBasic, I'll try and do that soon.
    Last edited by yereverluvinuncleber; Mar 26th, 2025 at 11:39 AM.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  23. #1103

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Just a quick Animated GIF, bit of a delay caused by the screen capture.

    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  24. #1104
    Fanatic Member Episcopal's Avatar
    Join Date
    Mar 2019
    Location
    Brazil
    Posts
    600

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by yereverluvinuncleber View Post
    Some progress on my icon settings tool for my VB6 dock program Steamydock.



    It now resizes more or less how I want it to and every control behaves itself when resized, as far as it possible for VB6 controls to do so. The check boxes in particular don't resize well but - acceptable.

    It is a straightforward VB6 form with no RC6 involvement, just reads the PNG, JPG, ICO files as displayed in the dock and allows you to edit a dock entry properties. Would make a good candidate for testing with TwinBasic, I'll try and do that soon.
    I liked the desktop image...

  25. #1105

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Glad you do so. It is a nice image.



    Just converting my two apps to DPI awareness using the 'old' SetProcessDpiAwareness API and enabling automatic resizing by dragging the bottom right corner.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  26. #1106

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Right, everyone, you must be working on interesting stuff, you always are... please let us see what you are working on. Progress in pictures is always a good thing.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  27. #1107
    Hyperactive Member
    Join Date
    Jan 2012
    Location
    Recently moved from Europe to Panama
    Posts
    283

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Finalizing work on two commercial apps. Nothing spectacular and basically nothing visual. A lot of behind the scenes optimization of existing features to work in international environments. Things like:

    - Dealing with non-western characters like Korean when populating treeviews and responding to treeview clicks filtering the detail listviews through queries to a SQL Server database
    - Using PowerPoint templates to generate output decks
    ----- Replacing placeholders with specific keywords with the resulting graphics, dealing with scaling and alignment challenges
    ----- Speeding up populating text-placeholders (don't access the PowerPoint shape to check for every option, but get the value once into a variable, and check against the variable -> cut back processing time with 98%!)
    - Cleaning up translations in 11 languages
    ----- Consitent translations within each app and across the apps
    ----- Short keystrokes for buttons and menu-options (e.g not having Show... and Select... in the same menu)
    ----- Properly indicating if menu-options show a new dialog or message with the three dots at the end
    - Expanding data structure with additional fields on multiple objects, which impacts the underlying database, application dialogs, Excel reporting, file i/o, etc.

    So, busy, but notihing fancy and visual to share here.

  28. #1108
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    No pictures yet as they're only at the debug strings phase or not GUI-based, but the couple things I'm working on:

    -GPS monitoring with ILocation/ILatLongReport

    -I figured out exactly what was wrong with my NullFilter driver, but rather than release that with no practical use, I'm going to try moving straight to a rudimentary A/V scanner demo by porting the 'scanner' example. Principal coding for the kernel side is done; now I need to write the user mode side and start testing. All modern AVs will want to scan from the kernel because it lets you scan something before Windows loads it...

    Code:
    Private Function ScannerpScanFileInUserMode(ByVal Instance As LongPtr, FileObject As FILE_OBJECT, SafeToOpen As Boolean) As NTSTATUS
        Dim status As NTSTATUS
        Dim buffer As LongPtr
        Dim bytesRead As Long
        Dim notification As LongPtr 'PSCANNER_NOTIFICATION
        Dim volumeProps As FLT_VOLUME_PROPERTIES
        Dim offset As LARGE_INTEGER
        Dim replyLength As Long, length As Long
        Dim volume As LongPtr 'PFLT_VOLUME
        
        SafeToOpen = True
        
        If (ScannerData.ClientPort = 0) Then
            Return STATUS_SUCCESS
        End If
        
        status = FltGetVolumeFromInstance(Instance, volume)
        If Not NT_SUCCESS(status) Then GoTo leave
        
        status = FltGetVolumeProperties(volume, volumeProps, LenB(volumeProps), length)
        If NT_ERROR(status) Then GoTo leave
        
        length = max(SCANNER_READ_BUFFER_SIZE, volumeProps.SectorSize)
        
        buffer = FltAllocatePoolAlignedWithTag(Instance, NonPagedPool, length, SCANNER_SCAN_TAG)
        
        If buffer = 0 Then
            status = STATUS_INSUFFICIENT_RESOURCES
            GoTo leave
        End If
        
        notification = ExAllocatePoolWithTag(NonPagedPool, LenB(Of SCANNER_NOTIFICATION), SCANNER_SCAN_TAG)
        
        If notification = 0 Then
            status = STATUS_INSUFFICIENT_RESOURCES
            GoTo leave
        End If
        
        status = FltReadFile(Instance, _
                            FileObject, _
                            offset, _
                            length, _
                            buffer, _
                            FLTFL_IO_OPERATION_NON_CACHED Or FLTFL_IO_OPERATION_DO_NOT_UPDATE_BYTE_OFFSET, _
                            bytesRead, _
                            CType(Of FLT_COMPLETED_ASYNC_IO_CALLBACK)(vbNullPtr), _
                            0&)
        
        If (NT_SUCCESS(status) And (0 <> bytesRead)) Then
            CType(Of SCANNER_NOTIFICATION)(notification).BytesToScan = bytesRead
            
            CopyMemory ByVal PointerAdd(notification, 8), ByVal buffer, min(CType(Of SCANNER_NOTIFICATION)(notification).BytesToScan, SCANNER_READ_BUFFER_SIZE)
            
            replyLength = LenB(Of SCANNER_REPLY)
            
            status = FltSendMessage(ScannerData.Filter, _
                                    ScannerData.ClientPort, _
                                    ByVal notification, _
                                    LenB(Of SCANNER_NOTIFICATION), _
                                    ByVal notification, _
                                    replyLength, _
                                    vbNullPtr)
            
            If status = STATUS_SUCCESS Then
                SafeToOpen = CType(Of SCANNER_REPLY)(notification).SafeToOpen
            Else
                DbgPrint dbgsUserSendFail
            End If
        End If
        leave:
        If buffer Then FltFreePoolAlignedWithTag(Instance, buffer, SCANNER_SCAN_TAG)
        If notification Then ExFreePoolWithTag(notification, SCANNER_SCAN_TAG)
        If volume Then FltObjectDereference(ByVal volume)
        
        Return status
    End Function
    As painful as this is to do in tB instead of C, I can't even image the nightmare in VB6 of not having all those tB syntax enhancements.

    -May or may not post the updates to my ucAniGif control... I did my first novel assembly level patching to fix an incorrect implementation of a bug workaround for *Netscape*, yes 1990s Netscape, that Microsoft never fixed, that only allows a 100ms or greater frame duration (plus I didn't account for variable frame delays). So I'm excited about that, but I need to make sure the instructions are the same in other Windows versions, and it's even more prone to breaking in the future than the "deprecated" shell interface itself. The issue is other workarounds are so complex I'd *entirely* lose the simplicity of the shell interface-- and then it wouldn't add any value beyond work by wqweto and VanGoghGaming.

  29. #1109

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by Erwin69 View Post
    ----- Short keystrokes for buttons and menu-options (e.g not having Show... and Select... in the same menu)
    Are you talking about ctrl+B for example?

    Quote Originally Posted by Erwin69 View Post
    ----- Properly indicating if menu-options show a new dialog or message with the three dots at the end
    What's that? Something I am not aware of?
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  30. #1110

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by fafalone View Post
    -GPS monitoring with ILocation/ILatLongReport
    So, you must be working with a bit of kit that has GPS built-in, are there any APIs for that? - or I expect an external device via some serial i/o?

    Quote Originally Posted by fafalone View Post
    moving straight to a rudimentary A/V scanner demo by porting the 'scanner' example. Principal coding for the kernel side is done
    Crikey, complex stuff, interested. Someone else here was working on a once-commercial a/v tool written in VB6 that identified potential trojans, forgotten - it is on the tip of my tongue... If I can remember I'll post it here.

    Quote Originally Posted by fafalone View Post
    -May or may not post the updates to my ucAniGif control...
    I'm keeping an eye on these ANI tools from yourself, Van and wqweto. I may use one or the other later on. I just need to finish what I am working on now.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  31. #1111
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,840

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    > Are you talking about ctrl+B for example?

    It's more like Alt+F then S

    > What's that? Something I am not aware of?

    This is hidden polish on professional apps. We always try to indicate if a menu option opens an interactive form/dialog of some sort with trailing ellipses on menu text.

    Options without it mean the action is executed immediately i.e. Save vs Save As..., the latter opens a dialog to choose filename so it's cancellable (and more safe to try).

    cheers,
    </wqw>

  32. #1112

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by fafalone View Post
    Code:
    Private Function ScannerpScanFileInUserMode(ByVal Instance As LongPtr, FileObject As FILE_OBJECT, SafeToOpen As Boolean) As NTSTATUS
        Dim status As NTSTATUS
        Dim buffer As LongPtr
        Dim bytesRead As Long
        Dim notification As LongPtr 'PSCANNER_NOTIFICATION
        Dim volumeProps As FLT_VOLUME_PROPERTIES
        Dim offset As LARGE_INTEGER
        Dim replyLength As Long, length As Long
        Dim volume As LongPtr 'PFLT_VOLUME
        
        SafeToOpen = True
        
        If (ScannerData.ClientPort = 0) Then
            Return STATUS_SUCCESS
        End If
        
        status = FltGetVolumeFromInstance(Instance, volume)
        If Not NT_SUCCESS(status) Then GoTo leave
        
        status = FltGetVolumeProperties(volume, volumeProps, LenB(volumeProps), length)
        If NT_ERROR(status) Then GoTo leave
        
        length = max(SCANNER_READ_BUFFER_SIZE, volumeProps.SectorSize)
        
        buffer = FltAllocatePoolAlignedWithTag(Instance, NonPagedPool, length, SCANNER_SCAN_TAG)
        
        If buffer = 0 Then
            status = STATUS_INSUFFICIENT_RESOURCES
            GoTo leave
        End If
        
        notification = ExAllocatePoolWithTag(NonPagedPool, LenB(Of SCANNER_NOTIFICATION), SCANNER_SCAN_TAG)
        
        If notification = 0 Then
            status = STATUS_INSUFFICIENT_RESOURCES
            GoTo leave
        End If
        
        status = FltReadFile(Instance, _
                            FileObject, _
                            offset, _
                            length, _
                            buffer, _
                            FLTFL_IO_OPERATION_NON_CACHED Or FLTFL_IO_OPERATION_DO_NOT_UPDATE_BYTE_OFFSET, _
                            bytesRead, _
                            CType(Of FLT_COMPLETED_ASYNC_IO_CALLBACK)(vbNullPtr), _
                            0&)
        
        If (NT_SUCCESS(status) And (0 <> bytesRead)) Then
            CType(Of SCANNER_NOTIFICATION)(notification).BytesToScan = bytesRead
            
            CopyMemory ByVal PointerAdd(notification, 8), ByVal buffer, min(CType(Of SCANNER_NOTIFICATION)(notification).BytesToScan, SCANNER_READ_BUFFER_SIZE)
            
            replyLength = LenB(Of SCANNER_REPLY)
            
            status = FltSendMessage(ScannerData.Filter, _
                                    ScannerData.ClientPort, _
                                    ByVal notification, _
                                    LenB(Of SCANNER_NOTIFICATION), _
                                    ByVal notification, _
                                    replyLength, _
                                    vbNullPtr)
            
            If status = STATUS_SUCCESS Then
                SafeToOpen = CType(Of SCANNER_REPLY)(notification).SafeToOpen
            Else
                DbgPrint dbgsUserSendFail
            End If
        End If
        leave:
        If buffer Then FltFreePoolAlignedWithTag(Instance, buffer, SCANNER_SCAN_TAG)
        If notification Then ExFreePoolWithTag(notification, SCANNER_SCAN_TAG)
        If volume Then FltObjectDereference(ByVal volume)
        
        Return status
    End Function
    As painful as this is to do in tB instead of C, I can't even image the nightmare in VB6 of not having all those tB syntax enhancements.
    Still looks like VB6. That's a good thing.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  33. #1113
    Member
    Join Date
    Mar 2020
    Location
    Germany (BW)
    Posts
    45

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Three dots at the end of the menutext indicate a dialog will appear.
    No dots mean the action starts immediately after selecting the item.
    This is part of the programmers guide to userinterface from MS or IBM, don't know, it was in the late 90s when I read it.
    Greetings

  34. #1114
    PowerPoster
    Join Date
    Jul 2010
    Location
    NYC
    Posts
    6,966

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by yereverluvinuncleber View Post
    So, you must be working with a bit of kit that has GPS built-in, are there any APIs for that? - or I expect an external device via some serial i/o?
    I've got a Surface Go2 tablet, the business edition with GPS and 4G. It's actually a very simple COM object/interface... it uses the more complex ISensor stuff from my AmbientLight Demo under the hood, but for some reason I couldn't access GPS that way myself.

    Code:
    Implements ILocationEvents
    
    Public Event LocationChanged(ByVal dblLatitude As Double, ByVal dblLongitude As Double, ByVal dblErrorRadius As Double, ByVal dblAltitude As Double, ByVal dblAltitudeError As Double)
    Public Event CivicAddressChanged(ByVal AddressLine1 As String, ByVal AddressLine2 As String, ByVal City As String, ByVal StateOrProvince As String, ByVal PostalCode As String, ByVal Country As String)
    
    Private mLoc As Location
    Private mRepLL As ILatLongReport
    Private mRepCR As ICivicAddressReport
    
    Private Sub Class_Initialize()
        Set mLoc = New Location
    End Sub
    Public Sub StartMonitoring(Optional ByVal bMonitorCoords As Boolean = True, Optional ByVal bMonitorAddress As Boolean = True)
        If (bMonitorCoords = False) And (bMonitorAddress = False) Then Exit Sub
        If (mLoc Is Nothing) Then
            Debug.Print "cLocationMon::Error: Couldn't create Location object."
            Exit Sub
        End If
        Dim rp(1) As UUID
        rp(0) = IID_ILatLongReport
        rp(1) = IID_ICivicAddressReport
        mLoc.RequestPermissions(0, rp(0), 2, 0)
        mLoc.SetDesiredAccuracy(IID_ILatLongReport, LOCATION_DESIRED_ACCURACY_HIGH)
        If bMonitorCoords Then
            mMonGPS = True
            mLoc.RegisterForReport Me, IID_ILatLongReport, mInterval
        End If
    ...
    End Sub
    Private Sub ILocationEvents_OnLocationChanged(reportType As UUID, ByVal pLocationReport As ILocationReport) Implements ILocationEvents.OnLocationChanged
        If (pLocationReport Is Nothing) = False Then
            Debug.Print "Got ILocationReport"
            If IsEqualGUID(reportType, IID_ILatLongReport) Then
                Dim pLL As ILatLongReport
                Set pLL = pLocationReport
                If (pLL Is Nothing) = False Then
                    Debug.Print "Got ILatLongReport"
                    Dim dblLatitude As Double = pLL.GetLatitude()
                    Dim dblLongitude As Double = pLL.GetLongitude()
                    Dim dblErrorRadius As Double = pLL.GetErrorRadius()
    ...
    oleexp has these interfaces/coclasses too, if you wanted to adjust to VB6.
    Last edited by fafalone; Apr 3rd, 2025 at 11:36 AM.

  35. #1115

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by Seniorchef View Post
    Three dots at the end of the menutext indicate a dialog will appear.
    No dots mean the action starts immediately after selecting the item.
    This is part of the programmers guide to userinterface from MS or IBM, don't know, it was in the late 90s when I read it.
    I didn't know that, absorbed, thankyou.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  36. #1116
    Hyperactive Member
    Join Date
    Jan 2012
    Location
    Recently moved from Europe to Panama
    Posts
    283

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    As explained by wqweto and Seniorchef it was polishing up based on the Windows UI design guidelines. I'm not sure how important it still is, since Microsoft seems to disable this by default in the latest Windows version. You'll have to go to "Windows Settings - Ease of Access - Keyboard" and switch on the option "Change how keyboard shortcuts work".

    I personally am not so much of a keyboard warrior and prefer using the mouse, but know that there are still many users that use shortcuts as much as possible, so we try to accommodate. With menus expanding over time, it becomes harder and harder to keep everything nice and tidy. As you can see in the before and after pictures of one of the popup menus, shortcut key <F> was used twice, and therefore unusable. Plus the “Quick Lists” are now easier accessible being numbered, instead of using non-intuitive characters.

    Name:  RMC Product Menus.jpg
Views: 86
Size:  28.9 KB

    The picture of the dialog shows shortcut keys for the two buttons, and the difference between a direct action and showing a new dialog in the popup menu.

    Name:  Find Planogram.png
Views: 84
Size:  52.3 KB

    It feels like a lot of work just for looking better, especially considering having to do that in English, Dutch, French, Spanish, Portuguese and Korean for this app, but I believe it adds to the level of professionalism and ease of use.
    Last edited by Erwin69; Apr 4th, 2025 at 11:30 AM.

  37. #1117
    Hyperactive Member
    Join Date
    Jan 2012
    Location
    Recently moved from Europe to Panama
    Posts
    283

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    And now I've posted this, I see that there is some non-consistency in the texts for the "Quick Lists"...

  38. #1118
    Addicted Member
    Join Date
    Feb 2015
    Posts
    238

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Slightly off topic but I've always written my own user interfaces from scratch because it insures ultimate consistency & flexibility. And I also disagree with Microsoft regarding the look & feel of my applications .

  39. #1119
    Hyperactive Member
    Join Date
    Jan 2012
    Location
    Recently moved from Europe to Panama
    Posts
    283

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by SomeYguy View Post
    Slightly off topic but I've always written my own user interfaces from scratch because it insures ultimate consistency & flexibility. And I also disagree with Microsoft regarding the look & feel of my applications .
    Back in the days, I think the UI guidelines for "office apps" made sense, and I try to follow these guidelines for my business apps still today. However these days they seem to have forgotten "office workers" and think everything is done on tablets of smartphones... These are nice to look at things, but for the actual work, it's still better / more efficient to use PC's with large size screens!

    It started with losing a large amount of valuable screen space on ever growing ribbon bars. And have you seen the ridiculously large color picker that they implemented in the latest versions of the Office apps? I'm getting older, so I do like good visibility but this is getting crazy!

  40. #1120

    Thread Starter
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,973

    Re: Getting the ball rolling. Which VB6 projects are you working on?

    Quote Originally Posted by SomeYguy View Post
    Slightly off topic but I've always written my own user interfaces from scratch because it insures ultimate consistency & flexibility. And I also disagree with Microsoft regarding the look & feel of my applications .
    Not off topic at all. This thread is to showcase VB6 developer's different styles and you'll see a complete variety of designs here. Post your latest or older designs. You've seen mine and they aren't anyone's style but my own. I've seen Windows programs go from trad. forms through a Windows for Tele-Tubbies style onto the rather poor desktop experience in Win 8 and onto the increasingly bland style we have today. Oh well.

    In Erwin's menus above, I realise the rule makes sense but all I see is too many ..., too many by far. That is not your fault but the fault of the style rule. I think we can safely ignore a rule at time if it leads to something that does not look 'right'.
    That is of course, only my opinion.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

Page 28 of 29 FirstFirst ... 182526272829 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width