|
Is there any way to customize the look and feel of the IME candidate window with WPF? Can this be done without writing our own custom TextBox-like control? Any pointers would be extremely helpful!
|
|
|
|
|
Hi All,
I'm having a few trouble with Callbacks in this scenario. I have developed a prototype service that, in true time honored fashion, works on my machine!!! But now I'm running on my dev desktop at work and I get this error on startup of the service:
"A user callback threw an exception. Check the exception stack and inner exception to determine the callback that failed."
I do use a callback contract in the service but I think the real issue is the lack of credentials on the service host.
I'm creating the servicehost, behaviours and endpoints all in C# code, not in config.
Does anyone have any pointers as to how to provide these credentials to the service host to get this service functioning in a more secure environment?
Cheers,
|
|
|
|
|
Try just setting the credentials of the service to run under the account that you need.
|
|
|
|
|
You know what ... I drove home from the office just after posting that and had the exact same thought. I'd left out the credentials on the ServiceBase object ... it's got nothing to do with the Wcf component and everything to do with the ServiceBase it's running in.
Thanks chap.
|
|
|
|
|
Hi Ray,
I have now configured the Windows Service to run on my machine account (I am a local admin) so I should have full access.
Using these credentials the service now installs correctly but I'm still see this same error.
"A user callback threw an exception. Check the exception stack and inner exception to determine the callback that failed."
Should I be setting these credentials on the Wcf ServiceHost object as well as the host Windows ServiceProcessInstaller?
Cheers,
|
|
|
|
|
|
I can't actually see the exception stack at the moment as I've just knocked up a quick WinService to see how things work, never worked with Windows Services before so its all new territory, including how to properly debug in this scenario.
Do you have any tips on that front?
Off to read the article, many thanks.
|
|
|
|
|
Debugging a service usually involves you attaching to the service via Visual Studio (the key combo is Ctrl + Alt + K) then pick the service name from the list of processes.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
Gotcha, thanks Pete ... will try this.
|
|
|
|
|
Debugging windows services can be trickey:
http://msdn.microsoft.com/en-us/library/7a50syb3(VS.80).aspx[^]
http://www.codeproject.com/KB/dotnet/DebugWinServices.aspx[^]
Remember that as a service you are running under a completely different user account so you need to watch the privileges on that account to ensure that it has access to everything you need. Most people, if they need different accesses, create a specific service account that gets created to run the service under rather than adjusting the default account privileges.
Start putting some try\catch blocks in your code to see what is happening where and work from there.
|
|
|
|
|
I'm going to play more with this, but my initial thought was to try running the Wcf service without any http endpoints or mex addresses ...
I did this and I still get the callback exception. Even though I'm no long registering an http endpoint (listener).
Or am I getting the wrong end of the stick and this is actually referring to my Contract Namespace ???
|
|
|
|
|
You really need to see what the inner exception details are. Make sure that all your code is wrapped up in try\catch blocks so you can grab the exception object and drill into it better.
|
|
|
|
|
This is the problem, I can only get it to throw one when I run it as a Windows Service ... the code works fine using the VS debug trick you linked too ...
And there isn't anything to attach a debugger too since it faults as soon as its started ...
Your right, this is very tricky ...
|
|
|
|
|
Put in your tray\catch, and then in the catch try writing out the exception details to a file or to the debug output stream and then run something like debug-view[^] to watch that stream when you try to start your service.
This allows you to dump out all the details of the exception to read them.
|
|
|
|
|
Hi Again Ray,
Thanks for all your help so far ...
I've wrapped various key area things in try/catch and am outputting exception details to the Debugger (DebugView), no exceptions are getting thrown at all. Nothing get logged in the DebugView window.
I just get a 1053 timeout error ... I can't get ...
I have a method that outputs the endpoint addresses of the service ... I have a load of messages in the Application log telling me that the service is listening on the correct (dynamically generated) endpoints ...
Looks like I have a long session of trying to even get an exception before I can make any progress.
Any other tips would be great chap.
Best,
|
|
|
|
|
Cracked it!!!
hmm ... need to investigate exactly what fixed it however!
Thanks so much for your help, I have more tools in my toolbelt now which is never a bad thing!!
Much appreciated!
|
|
|
|
|
Glad to hear it's working now, even though root cause may be a bit of a mystery.
Don't fro get to close the loop and update the thread with what the problem was so others here can benefit form your frustration
Maybe even a article if the problem was interesting enough
|
|
|
|
|
Hey Chap,
Indeed, I'm thinking of writing this whole thing up. I've made a prototype self-addressing Wcf Windows Service that can be switched between different protocols. And therein lies the mystery!
Basically I had SessionMode=SessionMode.Required set on the main ServiceContract. Then during testing I forgot to remove the http setting from the protocols setting in the config. So then the service starts up with session mode required and then tries to add a basicHttpBinding to the Endpoint Manager ... bang ...
Basically the interaction of config settings need some more management code, if you specify this you can't do this etc ...
The service is headed for a data processing server farm to provide comms so I decided on trying a self addressing thing, that way it could be less setup to do and each machine should be able to find others without the need for a central store of 'registered servers'. If the control center uses the same object, it can self address too then theoretically servers might be able to predict where they will find certain things without being told.
Much work to do before that arrives in full though! Juval Lowy talking about a publisher-subscriber pattern which I'm going to look at later ...
Thank for your help today!
|
|
|
|
|
Hi Friends
I am using silver light and i have taken ScrollViewer.Just i want dynamically change the Items Control(FileUploadControl.xaml) in scrollviewer:-
(scrollviewer x:name="filesScrollViewer" grid.row="3" horizontalscrollbarvisibility="Disabled" verticalscrollbarvisibility="Visible" background="White" xmlns:x="#unknown")
(itemscontrol x:name="fileList">
(itemscontrol.itemtemplate>
(datatemplate>
(app:fileuploadrowcontrol margin="0,2" xmlns:app="#unknown">(/app:fileuploadrowcontrol>
(/datatemplate>
(/itemscontrol.itemtemplate>
(/itemscontrol)
(/scrollviewer>Wink
Piyush Vardhan Singh
p_vardhan14@rediffmail.com
http://holyschoolofvaranasi.blogspot.com
http://holytravelsofvaranasi.blogspot.com
|
|
|
|
|
Piyush Vardhan Singh wrote: Just i want dynamically change the Items Control(FileUploadControl.xaml) in scrollviewer
What do you want to change?
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
I need to add styles for the controls in a panel dynamically,
I have created object of the control classes and setted the properties like this
properties.Add(TextBox.FontFamilyProperty, "Arial");
Now I want to add a ControlTemplate similarly, I have created object of ControlTemplate like this
ControlTemplate ctrl = new ControlTemplate();
ctrl.TargetType = typeof(edtPanel);
TextBlock txtbl = new TextBlock();
txtbl.Text = "Test Cotnrol Tempalte";
properties.Add(TextBox.TemplateProperty, ctrl);
edtPanel is the panel name where i need to add all the controls
Now i want to add the txtbl inside the ControlTemplate ctrl, but I don't have any idea how???
Does anybody help me?
Thanks in advance,
|
|
|
|
|
i create a new user control and that is included in my window. and i try to drag an element from the user control and drop it in the window. in the user control i have listview . i drag the listview items from the listview and drop in the window. how i can get the listview control and that particular listview item???
I have to remove the listview item from the listview. any one pls help me......
|
|
|
|
|
It is difficult to answer the question without knowing how you are implementing the Drag and drop ? Taking a guess, removing the object from your object collection would remove it from the listview automatically ?
|
|
|
|
|
This is in user control
<ListView name="pieChart" >
<ListViewItem Style="{StaticResource listviewItemRes}" PreviewMouseLeftButtonDown="ListViewItem_PreviewMouseLeftButtonDown" />
<ListView />
this is in window
<Window x:Class="Music_Diary.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" AllowDrop="True" Drop="Window_Drop" WindowStyle="None" Top="0" Left="0" >
private void ListViewItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
DragDrop.DoDragDrop(this.pieChart, sender , DragDropEffects.Copy);
}
private void Window_Drop(object sender, DragEventArgs e)
{
//here what i am going to write to remove the listview item from the listview
}
modified on Thursday, March 26, 2009 3:48 AM
|
|
|
|
|
See this link DragDrop databound[^]
Note the GetBoundItemFromPoint method which might help you.
|
|
|
|