Counter question - visual-studio-2010

I'm using Visual Studio 2010. I have a problem related to my code. My problem is I have my two PCs. They have counter software, with timer code on the first PC. The main problem is, when the counter software is stopped on first PC, the counter
on the other computer should stop as well (without sql connection)
Thanks in advance.

You could implement a service on the second box that will accept a "stop" request from the first box. You could use...
A WCF service (TCP/IP, IIS Hosted etc)
A web service (IIS Hosted)
Then you just call the service from the first box,
CounterService.StopCounter();
Tutorial on writing a WCF service:
http://blah.winsmarts.com/2008-4-Writing_the_WCF_Hello_World_App.aspx

Related

Is it possible to watch application insights locally

There is a web.api application with Application Insights plugged in. The AI works like a charm when it is published to Azure. Unfortunately sometimes it is necessary to launch the app in iis express for test purposes. Normally I do it from cmd like this: "c:\program files\iis express\iisexpress" /port:1337 /path:c:\tracker_pub.
Is it possible to watch AI statistics in such a case? In particular I would like to see exceptions that happen sometimes.
Please read this. You can use LinqPad to get all internal telemetry live. Also if you have VS 2015 Update 1 there is an Application Insights hub where you can find AI telemetry (same as in the VS output). You can read about it here. And also this.
Yes, as long as your application is receiving requests and your local machine has internet connection, so it can send events to AI data collection endpoint it should be recording activity when running in iis express. The recommended approach is to send this data to a different instrumentation key (after creating a new AI resource in AI portal), so that your local test traffic is not mixed up with your production data, this is also a great way to test new custom events you are about to add. If you are not seeing any data when running in iis express, the best way to debug would be to start your application in Visual Studio with F5, you will see every event that is about to be sent in your debug output window.

Remote debug a Windows service using VS2012

I've tried to find an answer to this before posting this question. I've got a windows service running on another machine. I've written the service in C# and the directory from which the service executable runs holds both executable and debug files (.pdb). I'm attempting to remote debug the service for the first time using VS 2012 Remote debugging. I'm able to attach to the service process successfully. However, as this is my first time I'm not sure what I can do next. I've clicked the pause button and that pauses the service on the line ServiceBase.Run(ServicesToRun) which isnt much use to me. The service has a timer which sets off every 30 seconds and will run the code in the timer event.
My question is ... is there a way of stepping through the code using the debugger in such a scenario.
Do I need to have some debug specific code already in my codebase so that when a debugger attaches it will take me to a place in the code from where i can step through the code?
Thanks,
Andrew.
There are several ways to debug your developed remote application or windows service. If you were in your machine(local) that would be simple to debug.
System.Diagnostics.Debugger.Launch();
But as you are in different machine it depends how your both Machines are connected. Which means you have some limitations on debugging remote application/services.
A Quick search gave me the following result that seemed helpful to me for you,
You can use Remote Debugging Monitor that visual studio use for connecting to remote device and debugging. You can have a clear instruction here on How to: Run the Remote Debugging Monitor.
There's another tool which lets you debug remote application's after a proper setup. But it has some limitations or conditions that you must abide by.
Here is the tool named Remote Tool, you can find a detailed setup process from MSDN here on How to: Set Up Remote Debugging.
It has been clearly quoted there about the prerequisites for using this tool. But still I'm rephrasing those again for quick reviewers.
Prerequisites to use Remote Tool for Visual Studio
To debug on a remote device:
The remote device and the Visual Studio computer must be connected over a network or connected directly through an Ethernet cable. Debugging over the internet is not supported.
The remote device must be running the Remote Tools for Visual Studio 2012.
You must be an administrator to install the remote tools on the remote device. To communicate with the remote tools, you must have user access to the remote device.
Feel free to share if you get to a better and working solution.
Thanks for your response. It reminded me to post my solution here for others like me.
The solution is simple (It always is once you know it).
Ensure that you are running the same code on the target machine as you have open in Visual Studio. It has to be the same assembly and version else the debugger will not hit your breakpoints. Ensure you have your breakpoints setup where you want the debugger to break execution. Then attach to the target machine process and wait for the timer to kick in and run the process where you breakpoint is set.
Hope this helps.
Andrew.

Error when MFPCreateMediaPlayer calls

I'm using media foundation player for rendering video in my app window.
On my host machine everything is ok, but when i run my app automaticaly (on the remote build server), MFPCreateMediaPlayer call returns with 0x80040154 error code ("Class not registered").
How it is possible to register class, how can i figure, which class needs to be registered, why this issue appears only on the remotes? Any usefull links are acceptable.
Tnx!
ANSWER: i find out, that problem was caused by disabled Desktop Experience service. As i enable this service and restart build server (running on Windows Server 2008 R2), MFPCreateMediaPlayer call return success code and video starts to play. Hope it can helps someone.
ANSWER: i found out, that problem was caused by disabled Desktop Experience service. As i enable this service and restart build server (running on Windows Server 2008 R2), MFPCreateMediaPlayer call return success code and video starts to play. Hope it can helps someone.

ASP.NET MVC Web Application with SQL Azure (To Do List Tutorial) -- error when deploying to production

I'm working on the following tutorial in the Windows Azure website:
https://www.windowsazure.com/en-us/develop/net/tutorials/web-app-with-sql-azure/
(also: go to windowsazure.com, click on the "Develop" heading, click on ".Net" under languages, under "Create Your First Application" -- click on ASP.NET MVC Web Application with SQL Azure)
I can run the application in the Windows Azure emulation environment on my development machine. If I change the connection strings to the production database, the app works in the local development environment.
However, when I deploy the application to Azure, I get an error message: "Sorry, an error occurred while processing your request." This appears within a rendered page, so I think the request is getting to ASP.NET.
I believe the problem I'm having is with allowing the production app on Azure to connect to the SQL Azure database.
I believe it is a firewall issue, but haven't been able to determine what the IP range needs to be. (I previously thought the problem would be with me running VS 2010 in a 32 bit environment, with Windows Azure as a 64 bit environment, but we deployed the sample app from a 64 bit environment and had the same issue). For additional details, here's my previous posting on MSDN to a previous inquiry on the same issue: http://social.msdn.microsoft.com/Forums/en-US/windowsazuretroubleshooting/thread/23afb5e3-e2ee-4444-aabb-7001ae6c6e6a/#af5284c0-ef4b-4193-b912-d4b7adfb5d21
Thanks for any assistance you can provide. I really want this sample app to work!
Update: Got the tutorial to work on a different computer and fresh 64 bit configuration, pointing to a different data center.
I got my hands on a new laptop with 64bit Windows 7 Home Premium , and installed Visual Web Developer 2010 Express, all of the most recent Azure and MVC SDKs. Seems like what I thought was a firewall issue, could have possibly been issues with database connectivity at the North Central data center. (I'm speculating, and will still need to test my original configuration against the South Central data center to see if this is actually the case. But, the North Central data center was not an available choice for hosting a SQL Azure database (3 month subscription), and here's a link to a discussion of this on another thread:
http://social.msdn.microsoft.com/Forums/da-DK/ssdsgetstarted/thread/7b181eef-ccd1-4090-80d1-0853059d166f
As mentioned above, the checkbox "Allow other Windows Azure services to access this server" needs to be checked, and both the service and the database need to be located in the same Windows Azure data center.
As #veblock suggest, you may try switching off the custom errors to see the actual error.
Meanwhile, the "IP range" that you seek for enabling firewall rule for your role is just a checkbox away:
You just need to check that "Allow other Windows Azure services to access this server" checkbox. The entry "Microsoft Services" with IP range of "0.0.0.0 - 0.0.0.0" will be automatically added. This is an internal entry and Microsoft keeps track of their own IP ranges, so that any Windows Azure data center will be able to access this SQL Azure Server.
But, yes, you can also check the real error message, by either Remote Desktopping to the instance, or by disabling the custom errors. There is a small chance that the ASP.NET MVC is also not fully installed in the Azure Instance. The easiest way to eliminate this problem would be by right clicking on the web application project and select "Add deployable dependencies", then chose ASP.NET MVC.
Thank you for your help. I have also hit this issues and spent several hours to debug what was going on since everything worked as expected in the Emulator, but won't work in production. After I have moved my hosted service and the database server to be in the same region, the problem went away.
In the original sample, it was also noted that it was important to ensure both are in the same region, but it mentioned due to performance reasons only, but for me it won't work at all.
"
IMPORTANT: Pick the same region that you choose earlier when deploying your application. This will give you the best performance.
"

VS2010 specific port changes at random

I'm playing around with a WCF service.
The problem I'm having is that VS2010 keeps randomly assigning a new port number to it when starting the VS Development Server even though I have set it to a specific port through the project settings.
If I keep stopping and starting VS Development Server for a few times with this problem, I get an error that says Unable to launch the ASP.NET Development server because port 'xxxx' is in use.
Why is this happening?
edit: It was suggested that this could be caused by the Dev Server not stopping. Unfortunately, it happens on a freshly started computer as well, i.e. when no instances of it are running at all.
Also, after I get the error message, it doesn't matter if I change the port, or select the Auto-assign Port option. The result is the same.
I have seen it sometimes and it seems that the webserver doesn't stop at times. So next time you fire up your project, the previous server is running at the same port.
The solution is to explicitly close the previous one and retry.
On the project properties of the web app project (right click and select Properties) Web tab, change the radio button to 'Specific Port' from auto select. That should make the port number totally consistent.
It turns out that the problem was linked to the issue answered at Visual Studio Development Server using wrong port.
I didn't suspect this to be the cause because I didn't have a blanket problem. I could launch the WCF solution at times, but not at certain other times. I could also run an instance of the Dev Server for an MVC solution with a specific port applied without problems.

Resources