Is this possible? Track function calls of c++ application - c++

Ok, this is a bit far fetched but here is the idea and question: is it possible to get any kind of 'reference' (memory pointer, function identifier or whatever data) from a running Windows application on an event trigger basis?
Why? just like screen scraper are trying to make legacy application translatable to some programatic api call, I'm looking for ways to identify button clicks in a legacy window application: I don't need to know what the button is or does at first, but I need to be able to record a unique ID for a button click.
Screen scrapers record clicks to 'replay' later but this is not the goal: the goal is to record clicks as they happen and build the user 'journey' through the app like Web site record browsing journey.
Any idea of what technology would allow this?
I'm thinking debugger like tracing of the pointer location associated with a click event, but not sure how that's applicable to a compiled packaged app.
Maybe it's just not possible; I can see how that may be a security issue, but if it is, I'd love to hear your thoughts.
Thanks

Related

AWS Lambda - Trigger Event To Update RDS MySQL

I have a problem with the business logic of a specific process of a Java web service based on the Spring Boot framework, and I am wondering if I can use AWS lambda to solve it.
Even if it is not an AWS lambda function, if it is possible to solve it in another way, please advise.
The business logic of the process in question is as follows.
A specific member logged in to his/her own page (total of 3 sites that can log in)
Expose an alert window above the member information modification guide pop-up window (related to member code misregistration at the time of registration)
Update member code using API when clicking the OK button (reflecting A RDS)
Based on the changed member code, #2 pop-up screen reconfiguration (the code is also used for other screen configurations)
After entering the remaining member information on the reconfigured screen, save member information using API (reflecting A RDS)
The problem here is the situation where the process hangs at #3.
It is possible to shut down the computer or browser on the client.
After that, if the member logs in to the other two sites, there is a problem with the screen configuration because the data for #5 is not saved.
The other two sites are looking at the member code, and exception handling is not possible.
Is there any way to roll back the member code again if the process is interrupted from step #3?
Is there a way to solve the problem by adding functions without modifying the process up to #5?

Detect Presence in AWS AppSync

I am working on an app that relies heavily on detecting when users go offline and go back online. I wanted to do this with AWS AppSync, but I can't seem to find a way to do this in the documentation. Is there a way to do it in AppSync?
Thanks for the question. Detecting presence is not currently support out of the box but you can likely build similar features yourself depending on the use case.
For example, a resolver on a subscription field is invoked every time a new device tries to open a subscription. You can use this resolver field to update some data source to tell the rest of your system that some user is currently subscribed. If using something like DynamoDB, you can use a TTL field to have records automatically removed after a certain amount of time and then require a user to "ping" every N minutes to specify that they are still online.
You could also have your application call a mutation when it first starts to register the user as online, then have the application call another mutation when the app closes to register it as offline. You could combine this with TTLs to prevent stale records in situations where the app crashes or something prevents the call to register as offline.
Thanks for the suggestion and hope this helps in the meantime.

GCP Console - prompt to refresh the page

Several of GCP accounts I use display a message after logging in:
Refresh the page?
Now that you’ve upgraded, we need to refresh the page so you can take advantage of the new capabilities of your account. Do you want to refresh the page now, or do it yourself later?
Does anyone else see similar message? Wonder what kind of upgrade it relates to, I don't remember making any changes to the account recently. Hitting OK, refresh now doesn't produce any visible changes. Also it seems there is no way of making this message disappear - acknowledging or rejecting will still trigger a popup on next login.
popup screenshot
I guess the developers/engineers the project is shared with are making some changes. Well as per my observation, whenever one makes a change in GCP, it automatically gets reloaded or the necessary changes take place in background, but when others are working at same project at the same time, then if one user makes any changes in a shared access resource, then other users might need to reload the site for the necessary changes to take place.
I would highly suggest you contact other developers/engineers you are sharing the project with to check if they made changes in the project or not.
Hope this helps. Cheers :)

OneSignal. List of notifications?

I am using a universal app template that uses OneSignal for push notifications which works perfect, however once the notification is dismissed or the app is opened it goes away and no way for the user to retrieve it or see if ever again.
I don’t know much programming and know just enough html to get me by. So I went through one signal documentation and found this.
https://documentation.onesignal.com/reference#view-notifications
So I created the php file and it does pull the list. Awesome! However it pulls a ton of info the user does not need to see and is poorly formatted. Is there a way of altering this code so I can display only the date, title and message?

How to click a button on website with C++

I'm designing a web crawler with C++,but there is a web page asking me "Do you at least 18 years of age?" when I first fetch the web page by using URLDownloadToFileW,and of course I must click YES.
In javascript,I can use document.getElementsByTagName('button')[0].click(); to simulate a button click,so is there any other way to solve such problem with C++?
That is not really easy to do, but if you want to do it, you need several requests.
What the click (i.e. document.getElementsByTagName('button')[0].click(); in JavaScript) does is to trigger an associated click event. Your first step should be to find the event handler code and take a look into it. The event may for example send another (AJAX) request to the website. If that is the case, you have to perform the request in C++ in your crawler, too. Many sites also use cookies to store the user's answer to such questions (or at least the fact that the user selected "I'm at least 18 years of age"). So your crawler has to accept such cookies, too, and store them between requests.
I am aware of the fact that this answer is rather general, but it is difficult to give a more specific answer without knowing the exact website you are crawling.
Alternative approach: Instead of writing a crawler that downloads the website content directly, you might utilize frameworks like Selenium. Selenium allows to automate a browser and is intended to be used for testing, but one could also use it to crawl a website. The advantage is that you can also perfom things like clicks easier in the browser, given you know the ID or the XPath of the element you want to click. This might be easier to do than a "classical" crawler.
However, you should be aware that many websites have some kind of protection against flooding them with requests in place. That is, if you intent to do a lot of request to the same server in a short amount of time, you might get blocked from the server. So try to limit the requests to the absolute minimum.