HISE Logo Forum
    • Categories
    • Register
    • Login

    How to get CPU serial number using HISE?

    Scheduled Pinned Locked Moved General Questions
    36 Posts 6 Posters 6.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Dan KorneffD
      Dan Korneff
      last edited by

      @Christoph-Hart I think this is the issue:
      https://github.com/juce-framework/JUCE/commit/120f9266dc881c81371109c69b37a0a246accdeb

      Is this fix already implemented?

      Dan Korneff - Producer / Mixer / Audio Nerd

      Christoph HartC 1 Reply Last reply Reply Quote 0
      • Christoph HartC
        Christoph Hart @Dan Korneff
        last edited by

        @Dan-Korneff welp it‘s time for a JUCE_EVEN_BETTER_MACHINE_IDS macro…

        Dan KorneffD ustkU 3 Replies Last reply Reply Quote 4
        • A
          aaronventure
          last edited by aaronventure

          You can fetch the MachineGuid that Windows creates on install using powershell. Here's how you do it in HISE:

          const BackgroundTask = {};
          
          BackgroundTask.getMachineGuid = Engine.createBackgroundTask("GetMachineGUID");
          inline function getMachineGuid()
          {
          	local command = "reg";
          	local args = 
          	[
          	    "query",
          	    "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography",
          	    "/v", 
          	    "MachineGuid"
          	];
          	
          	local logFunction = function(thread, isFinished, data)
          	{
          		if (!isFinished)
          		{
          			var id = data.substring(data.indexOf("REG_SZ")+6, data.length).trim();
          			
          			Console.print(id);
          		}
          
          	};
          
          	
          	BackgroundTask.getMachineGuid.runProcess(command, args, logFunction);
          }
          
          getMachineGuid();
          

          A bit silly function naming since it won't return anything, but you get the gist.

          Dan KorneffD 1 Reply Last reply Reply Quote 2
          • Dan KorneffD
            Dan Korneff @aaronventure
            last edited by

            @aaronventure I've created an app that displays the system ID with the Engine.getSystemID() function. I was looking for something that displayed the items in the system that were used to create the numbers.
            Ultimately, it looks like there's a fix available from JUCE. Looking forward to the update 😀

            Dan Korneff - Producer / Mixer / Audio Nerd

            1 Reply Last reply Reply Quote 0
            • Dan KorneffD
              Dan Korneff @Christoph Hart
              last edited by

              @Christoph-Hart No rush. Just checking in for a friendly ETA.

              Dan Korneff - Producer / Mixer / Audio Nerd

              1 Reply Last reply Reply Quote 0
              • Dan KorneffD
                Dan Korneff @Christoph Hart
                last edited by

                @Christoph-Hart Would you want to give me a "this is how I would do it" outline and I could take a run at it? Just trying to manage the pitchforks. 🤠

                Dan Korneff - Producer / Mixer / Audio Nerd

                1 Reply Last reply Reply Quote 0
                • ustkU
                  ustk @Christoph Hart
                  last edited by

                  @Christoph-Hart said in How to get CPU serial number using HISE?:

                  @Dan-Korneff welp it‘s time for a JUCE_EVEN_BETTER_MACHINE_IDS macro…

                  Where are we at about this GENERATE_FOOL_PROOF_ID?

                  Can't help pressing F5 in the forum...

                  Dan KorneffD 2 Replies Last reply Reply Quote 0
                  • Dan KorneffD
                    Dan Korneff @ustk
                    last edited by Dan Korneff

                    @ustk I think the method can just be swapped out with the new one.
                    I've been tinkering with implementation on this end. Lots of little hurdles backporting from juce 8. Got a huge stack trace to work out, but I've been too swamped to complete

                    Dan Korneff - Producer / Mixer / Audio Nerd

                    1 Reply Last reply Reply Quote 0
                    • Dan KorneffD
                      Dan Korneff
                      last edited by Dan Korneff

                      @Christoph-Hart Here's where I'm at:

                      Link Preview Image
                      Sign in · GitLab

                      GitLab Community Edition

                      favicon

                      GitLab (gitlab.korneff.co)

                      I'm currently stuck at

                      Severity	Code	Description	Project	File	Line	Suppression State	Details
                      Error	LNK2001	unresolved external symbol "public: __cdecl juce::juce::MemoryBlock::~MemoryBlock(void)" (??1MemoryBlock@juce@1@QEAA@XZ)	HISE Standalone_App	Z:\GitHub\HISE\projects\standalone\Builds\VisualStudio2022\include_juce_core.obj	1		
                      Error	LNK2001	unresolved external symbol "public: __cdecl juce::juce::MemoryBlock::MemoryBlock(void)" (??0MemoryBlock@juce@1@QEAA@XZ)	HISE Standalone_App	Z:\GitHub\HISE\projects\standalone\Builds\VisualStudio2022\include_juce_core.obj	1		
                      Error	LNK2001	unresolved external symbol "public: __cdecl juce::juce::MemoryBlock::MemoryBlock(unsigned __int64,bool)" (??0MemoryBlock@juce@1@QEAA@_K_N@Z)	HISE Standalone_App	Z:\GitHub\HISE\projects\standalone\Builds\VisualStudio2022\include_juce_core.obj	1		
                      Error	LNK2001	unresolved external symbol "public: __cdecl juce::juce::MemoryBlock::MemoryBlock(class juce::juce::MemoryBlock &&)" (??0MemoryBlock@juce@1@QEAA@$$QEAV011@@Z)	HISE Standalone_App	Z:\GitHub\HISE\projects\standalone\Builds\VisualStudio2022\include_juce_core.obj	1		
                      
                      

                      Any chance you could take a look? (ignore the image file stuff..)

                      Dan Korneff - Producer / Mixer / Audio Nerd

                      1 Reply Last reply Reply Quote 0
                      • Dan KorneffD
                        Dan Korneff
                        last edited by

                        zolu.gif

                        Dan Korneff - Producer / Mixer / Audio Nerd

                        1 Reply Last reply Reply Quote 1
                        • Dan KorneffD
                          Dan Korneff @ustk
                          last edited by

                          @ustk Got it sorted. Sending to beta for testing now.

                          Dan Korneff - Producer / Mixer / Audio Nerd

                          1 Reply Last reply Reply Quote 1
                          • Dan KorneffD
                            Dan Korneff
                            last edited by

                            @Christoph-Hart @ustk Confirmed working:

                            Link Preview Image
                            Sign in · GitLab

                            GitLab Community Edition

                            favicon

                            GitLab (gitlab.korneff.co)

                            It requires 2 new files:
                            juce_Span.h
                            juce_EnumHelpers.h

                            and edits to:
                            juce_core.h
                            juce_win32_SystemStats.cpp
                            juce_SystemStats.cpp
                            juce_OnlineUnlockStatus.cpp

                            Dan Korneff - Producer / Mixer / Audio Nerd

                            CatABCC 1 Reply Last reply Reply Quote 2
                            • CatABCC
                              CatABC @Dan Korneff
                              last edited by

                              @Dan-Korneff Hey buddy, sorry to bother you, I don't know what's going on with GitLab, I can't see your code on GitLab, will you publish it on GitHub? Or is there another way for me to get it? I will be very grateful

                              //I am a new student at HISE._
                              //Windows11 & MacOS Ventura 13.6.7_

                              Dan KorneffD 1 Reply Last reply Reply Quote 0
                              • Dan KorneffD
                                Dan Korneff @CatABC
                                last edited by

                                @CatABC I set the repo back to private.
                                Here's a link to the files:
                                https://hub.korneffaudio.com/index.php/s/M6kgXeaZ9BstR7Q
                                This will replace the existing method with the new one. No need to keep the old one since it's flawed.

                                Dan Korneff - Producer / Mixer / Audio Nerd

                                CatABCC 2 Replies Last reply Reply Quote 0
                                • CatABCC
                                  CatABC @Dan Korneff
                                  last edited by

                                  @Dan-Korneff Thank you so much! I don't know how to thank you, you are my big brother, hahahaha🍻 🍻 🍻

                                  //I am a new student at HISE._
                                  //Windows11 & MacOS Ventura 13.6.7_

                                  1 Reply Last reply Reply Quote 0
                                  • CatABCC
                                    CatABC @Dan Korneff
                                    last edited by

                                    @Dan-Korneff I used your file, but the generated machine code is the same as the original one. I'm not sure if this is normal. Could you give me an answer?

                                    //I am a new student at HISE._
                                    //Windows11 & MacOS Ventura 13.6.7_

                                    Dan KorneffD 1 Reply Last reply Reply Quote 0
                                    • Dan KorneffD
                                      Dan Korneff @CatABC
                                      last edited by Dan Korneff

                                      @CatABC You have to enable this setting in projucer and rebuild HISE:
                                      proID.png

                                      Now HISE will use the new code to gather system IDs.

                                      Then you need to set JUCE_USE_BETTER_MACHINE_IDS=1 in your project so the exported plugin references the correct system ID.

                                      Screenshot 2025-06-11 080150.png

                                      Dan Korneff - Producer / Mixer / Audio Nerd

                                      CatABCC 1 Reply Last reply Reply Quote 0
                                      • CatABCC
                                        CatABC @Dan Korneff
                                        last edited by

                                        @Dan-Korneff well,I understand!thanks bro!

                                        //I am a new student at HISE._
                                        //Windows11 & MacOS Ventura 13.6.7_

                                        1 Reply Last reply Reply Quote 0
                                        • First post
                                          Last post

                                        11

                                        Online

                                        1.8k

                                        Users

                                        11.9k

                                        Topics

                                        104.0k

                                        Posts