Solved

Push the Screen Size and Task bar Height to another running process.

Posted on 2013-12-17
11
441 Views
Last Modified: 2013-12-27
Hi, I have an Older Application that Docs a Popup Window to the Top of the Task bar, It also Sizes the Height of the Window to use all of the Available Screen Height.

It is sort of like the Start Menu of Windows XP - Windows 7

When it was designed, the Screen Sizes were 640 x 480, and it worked on that size..

Now On a 1600 x 1200 screen,  it's all out of proportion.

What I'd Like to be able to Do, is make this app think the Task bar is HIGHER than it really is.
And Also Make it think the Screen Height is Less than it really is.

That way I could control Where it Docs to : the Virtual Task bar height.
And how Tall it becomes : Virtual Screen Height.

I don't have the Source for the Old App, as I did not Develop it.
But I'm sure it's making some call to the OS to Get the Task bar Height and Screen size.

So is there a way to :
1.) find out what API is being Called by this process to Get the Task bar Height, and Screen dimensions.
2.) Intercept the Call and Push Virtual numbers back instead of the Actual values.

In other words, I want to Trick the already running process into thinking the Screen and Task Bar are different from what they Really are..
0
Comment
Question by:vpcnc
  • 6
  • 5
11 Comments
 
LVL 68

Expert Comment

by:Qlemo
ID: 39724267
In theory, if you find out which API/DLL is used, you can inject a wrapper DLL with a proxy call doing whatever you like. But that requires you to see the calls, as you already stated, then hack them, etc. pp. Heavy stuff.

I assume setting the window size after starting wouldn't be an option?
0
 
LVL 1

Author Comment

by:vpcnc
ID: 39724353
@Qlemo
"I assume setting the window size after starting wouldn't be an option?"

No, I don't want to re-size my Screen.
Only be able to re-size the app.  
and the only way I can think to do it, is to be able to Push it virtual screen info..

I'm just not sure HOW to go about it..  
The Theory is the easy part, The actual implementation and coding, that's the hard part.
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39724475
Note that I used a lower-letter "window" ;-), and that should be the "window of the application". The question is whether you have no other choice than to fake API calls, or if a resize after starting the application would work (which is much easier).
0
 
LVL 1

Author Comment

by:vpcnc
ID: 39724808
Ahh, Sorry mis-understood your post.
It's not resizable or Movable. If it was, I don't think I'd be asking this question.
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39725227
It's a difference between seeing the option to resize and being able to resize.
Look at www.commandline.co.uk/cmdow/, which allows to control other windows. If that does not work, than you'll have to go the API way, to change the reported desktop size,

IIRC there are "sandboxing" apps, which are able to fake a different resolution for the application they are started with. Cannot find any at the moment ...
0
Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

 
LVL 1

Author Comment

by:vpcnc
ID: 39725418
Maybe your Missing the Point here:

1.) find out what API is being Called by this process to Get the Task bar Height, and Screen dimensions.
2.) Intercept the Call and Push Virtual numbers back instead of the Actual values.


I'd like to Know How to Find what API is Being Called...
and How to Catch it, and report back my own Values Instead.
0
 
LVL 68

Accepted Solution

by:
Qlemo earned 500 total points
ID: 39725457
And I'm trying to offer alternatives for doing that, because setting the size directly is much easier - if it works.

The API Monitor from www.rohitab.com/apimonitor¿ can help with the first part. Dependency Walker from http://www.dependencywalker.com/ displays the loaded and requested DLLs, and allows for DLL load profiling.
0
 
LVL 1

Author Comment

by:vpcnc
ID: 39736996
Never Mind...
I used Process Monitor from sysinternals
and resHack to Alter the Apps default values.

But it would have been nice to have had someone actually answer the question as it was presented.
Instead of offering - Workaround / alternatives.

While I had a specific app and task  in mind, I was also curious to know,
how to capture the Apps api call

Perhaps that information could have proved useful for some other task.
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39737048
Pardon? Did you read http:#a39725457 which offers a way to monitor API calls, as requested?

And it is common practise for the Experts to try to get Askers to open their mind to a different approach, because they often do not know better.
0
 
LVL 1

Author Comment

by:vpcnc
ID: 39742560
I've requested that this question be closed as follows:

Accepted answer: 0 points for vpcnc's comment #a39736996

for the following reason:

While it Didn't answer the question I posed, It was the Solution to the Immediate Application I had Posed the Question About.
The Posts and Input from the Other Expert who contributed to the thread,  While It provided links to Tools to Monitor activity to the API, it didn't directly answer or provide examples of How to do what was asked.

As I have solved my own question,  I'd just as well Skip the Grading assignment, but One of the choices has to be selected.
0
 
LVL 1

Author Closing Comment

by:vpcnc
ID: 39742561
Thank you for your Input and Assistance.
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
If you get continual lockouts after changing your Active Directory password, there are several possible reasons.  Two of the most common are using other devices to access your email and stored passwords in the credential manager of windows.
This Micro Tutorial will go in depth within Systems and Security in Windows 7 and will go into detail regarding Action Center, Windows Firewall, System, etc. This will be demonstrated using Windows 7 operating system.
The Task Scheduler is a powerful tool that is built into Windows. It allows you to schedule tasks (actions) on a recurring basis, such as hourly, daily, weekly, monthly, at log on, at startup, on idle, etc. This video Micro Tutorial is a brief intro…

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now