Jump to content

Any way to build a small api to send items from other monitoring programs?


philhu

Recommended Posts

A small api, like display an environment variable in windows, so other programs can set an environment variable and aida64 can display it

 

Or add variables with the command to run to get the output to put in the variable

 

With either of these, we can use label to get special variable from other progs.

Link to comment
Share on other sites

We will implement the requested new feature in the next AIDA64 beta update (due next week). You will be able to define up to 10 environment variables (A64IMP1..A64IMP10) that AIDA64 will pick up and let you display on the OSD Panel, Sensor Panel, LCD, etc.

Link to comment
Share on other sites

I do not see where you can select these items?  I looked in sensor item, or lables, expecting them in the labels pulldown, but not there

You have to set a value for a particular item to make it appear among the other sensor items.

 

How about allowing ALL windows env variables, like %systemroot%, etc?

It's not possible, since the name of the variable has to be fixed. And no, we do not want to add all possible values :) You can set an AIDA64-specific variables (A64IMP1..A64IMP10) to the value of another environment variable you would like to see there.

Link to comment
Share on other sites

You have to set a value for a particular item to make it appear among the other sensor items.

 

It's not possible, since the name of the variable has to be fixed. And no, we do not want to add all possible values :) You can set an AIDA64-specific variables (A64IMP1..A64IMP10) to the value of another environment variable you would like to see there.

 

ok, i have tried setting a64imp1 to %Systemroot%

 

#set %a64imp1%=%systemroot%

#echo %a64imp1%

C:/Windows

 

The variable doesn't show up anywhere I can find it

Link to comment
Share on other sites

I am running the cmd window and AIDA64 as administrator.  I set the env variable like this:

C:\Windows\System32>set A64IMP1=%Systemroot%

C:\Windows\System32>echo %A64IMP1%
C:\WINDOWS

C:\Windows\System32>

 

AIDA64/config/environment, doesn't show it.  I even tried restarting AIDA64

 

Since they are both 'run as administrator', they would both be under the same environment, true??

 

 

 

Link to comment
Share on other sites

Since they are both 'run as administrator', they would both be under the same environment, true??

No, apparently not true ;) For test runs we've had to use System Properties / Environment Variables to set the new AIDA64 specific environment variables.

Link to comment
Share on other sites

Ok a few things on this.

 

To set these, there are 2 environments.  USER, Machine.

 

To set them from cmd line, there is a program, setx

 

setx A64IMP3 "Value" /M

 

The above set variable 3 to the "Value".  The /M means to add to machine, or system, environment.  This is needed for AIDA64

 

Now for the bug:

AIDA64 only reads the values on startup.  So my idea of setting these on a schedule from a remote program would not work.  AIDA64 would need to read/update the variables in the same loop as it reads the parameters for display update.

Link to comment
Share on other sites

No, there's no issue about updating the values in the hardware monitoring module of AIDA64. If you check the Config / Environment Variables page, you can see that the changes are not committed in a way that AIDA64 could realize them.

Probably using environment variables for such purposes isn't a good idea afterall. We could however pick another method. How about going for Registry? Like using the following path to import values from?

HKEY_CURRENT_USER\SOFTWARE\FinalWire\AIDA64\ImportValues

Link to comment
Share on other sites

Another alternative is a jump file.  You define an exact filename on a system, like in your application folder called, ImportValues.txt

 

You check the modified date/time to see if it has been changed, if it has you parse it as:

 

valuename="This is the value"

value2name="This is another"

 

 

etc, etc

Link to comment
Share on other sites

That could work, but IMHO Registry is a superior method. I personally never liked passing values via files. The best method would be using shared memory, to avoid putting a pressure on disk drives. Truth be told, for a developer, using shared memory is more difficult than just setting a Registry value or writing into a text file.

Link to comment
Share on other sites

well, my system ha s aramdisk, 1m, which is where i write my files to be executed from my monitoring pgm.  I hate constant disk writes too.

 

What my system does is write a batch file that is executed after monitor stufff is run internally.  The environmental setx would have been cool.

 

I would be fine with reg values, but I do not know of any way to write them from a batch file/cmd line except maybe writing a x.reg file and importing it

Link to comment
Share on other sites

Sold, exactly what I need

 

So would you take every 'variable', ie, named registry entry under ImportValues and return those?

 

So if I added:

 

String "AIDAProcessingStatus" with a value of "4-8 jobs in use"

and..

REG_SZ "AIDAProcessJobsInUse" with a value of 4

 

The first would obviously be a string to display

The second is a number which could then be used in fields with bars, etc

 

something like that?

 

Link to comment
Share on other sites

No, the value names has to be fixed, and has to come from a pre-defined list of values, similarly to the previous environment variables solution.

BTW, can we drop the environment variables solution and replace it with the Registry based solution?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...