Solved

Why does running Dual Monitor break my C# Video Application?

Posted on 2007-11-26
10
716 Views
Last Modified: 2013-12-16
Hello everyone,

Does anyone have any insight as too why my C# .NET 2.0 application cannot display it's video when moved over to a Dual monitor?

The video shows fine when on the main display, but once moved over to the Second display/Dual monitor the video dissappears. The application is still running, but no video. When I move the application back to the main display the video appears instantly.

Notes:
- The applicaton is a Visual C# .NET 2.0 app
- The video comes from a C++ DLL that was marshalled to communicate with it. However this same problem occured in the old C++ application that used the same video DLL's, so I don't think it has anything to do with the DLL's.
- I'm using panels to display the video in. I give the DLL the panels HANDLE and it sends the vide there.

It's like the application forgets what the panel's HANDLE was.

Any information you have is useful at this point. Thanks. :)
0
Comment
Question by:VirtueTech
  • 5
  • 4
10 Comments
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 20351876
You say you move the video while playing?
If your video is played with some hardware-related technique like DirectX, you cannot switch while running.
0
 

Author Comment

by:VirtueTech
ID: 20352045
Interesting...

I gave that a shot...it didn't make a difference. I started the application. Moved the application over to the second/dual monitor view. Then started the Video. It didn't show the video.

Thanks for the reply though.

any other ideas?
0
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 20352102
make some trick to start the application in the second monitor, without moving. And test.
Maybe the video library is initializing with the first monitor parameters. Just a hunch.
0
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 

Author Comment

by:VirtueTech
ID: 20352111
Maybe. I'm not familiar with starting my app in the "extended" part of my monitor. I'll have to look into it.
0
 
LVL 12

Assisted Solution

by:andrewjb
andrewjb earned 100 total points
ID: 20356496
Can you play the video at all (using some other s/w) on the second monitor? In case it doesn't have DirectX installed at all....
0
 

Author Comment

by:VirtueTech
ID: 20360657
Actually the video comes from a H.264 card, which pushes through a C++ DLL. I tell the DLL what the HANDLE of my windows form control is, and it uses that HANDLE to play the video on.

I don't have any DirectX API usage in my application.
0
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 20360735
even worst, surely your h.264 is sending the video directly to the primary video card.
0
 

Author Comment

by:VirtueTech
ID: 20409371
I believe it does go directly to the video card, it is handled from the DLL we have. Do you have any other ideas or things I might be able to do to put a finger on why it doesn't work?
0
 
LVL 55

Accepted Solution

by:
Jaime Olivares earned 400 total points
ID: 20409406
I think you have to ask to the DLL provider about the specific behaviour of it. This problem is not related to C# or .net.
0
 

Author Comment

by:VirtueTech
ID: 20412593
yeah...I have...thanks for your comments everyone.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

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

This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

770 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