|
Have you resolved this?
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Yes the problem was solved, all the issue was caused by the method used to split the file into bytes, for some reason the way I was using work for all files except those office 2007 files, I changed the method and everything is working fine now
|
|
|
|
|
Cool deal.
Have a Happy New Year
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hello ,
I am creating a optional setup dll for my installation. I am not able to use this set up file with my Win CE CAB file. the setup.dll exporting following function :-
Install_Init
Install_Exit
Uninstall_Init
Uninstall_Exit.
can any body help me how to use this dll in my CAB file.
thanks,
Yudhisthira Attry
|
|
|
|
|
hi there
we are handling some CIL and need to parse the call instruction. we are following the specification ( http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-335.pdf p.375)
in our case we need to know how to convert a methodref (0x0A) metadata token into a Reflection.MethodInfo type... would be nice...
we were just hoping that system.reflection would contain method to do this...
|
|
|
|
|
try
(returns MethodBase) someModule.ResolveMethod( descriptor );
|
|
|
|
|
|
Steady on you two. Get a room;P
Deja View - the feeling that you've seen this post before.
|
|
|
|
|
Pete O'Hanlon wrote: Steady on you two. Get a room
"Any sort of work in VB6 is bound to provide several WTF moments." - Christian Graus
|
|
|
|
|
What is the standard method for communication between .NET apps?
I've been using .NET to talk to a COM Automation Server, which allows me to create objects and get events on those objects.
However, I'd like to replace that COM Server with a .NET application. However, it's not clear to me how two .NET applications share objects, much less raise events between each other.
What's my approach, here?
|
|
|
|
|
You are searching for .Net Remoting. A quick search[^] here on CP reveals many articles which will help you to learn the basics.
Robert
|
|
|
|
|
.NET remoting still has it uses in a few cases (very closely tied processes) but generally speaking you should look at Windows Communication Foundations as it - ehh - well, it provides the foundation for communication on the Windows platform.
|
|
|
|
|
hi,
Can anyone explain how I can attain the following senario
What I have to do to display a warning message when I change the focus or try to edit another row, without entering valid data in the mandatory cells(fields) of the previous row
thnks.
|
|
|
|
|
Have you resolved this?
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
I have a class that i want to be able to use in a asp.net app or a win app. I want this class to be thread safe. I have the following code in my event method
public void OnTransactionStarted(object sender, TransactionStartedEventArgs e)
{
ISynchronizeInvoke sync = this as ISynchronizeInvoke;
if (sync.InvokeRequired)
{
TransactionStartedEventHandler tmp = new TransactionStartedEventHandler(OnTransactionStarted);
object[] args ={ sender, e };
sync.Invoke(tmp, args);
return;
}
if (TransactionStarted != null)
TransactionStarted(sender, e);
}
I cannot get the ISyncorizeInvoke object from my class. I tried making this class a component and i still was not able to make this work. The only way i can make this code work is by implement the "WebControl" or "Control" object. I do not want to make this specific for an asp.net app or a win app.
I tried to inherit the ISyncronizeInvoke interface but i did not know what to do from there. I want to make this class as simple and elegent as possible.
Any suggesions? Thanks in advance!
|
|
|
|
|
What kind of class are you creating? Implementing ISynchronizeInvoke does not make your class thread-safe. If your class isn't a "control", then you should use other methods (e.g. Monitor, lock, ReaderWriterLock) to make your class thread-safe.
Take care,
Tom
-----------------------------------------------
Check out my blog at http://tjoe.wordpress.com
|
|
|
|
|
I am using lock method to make my class threadsafe. I am trying to avoid getting cross-thread errors in a multithreaded environment. This is what ihave done so far:
public void OnTransactionEnded(object sender, TransactionEndedEventArgs e)
{
ISynchronizeInvoke sync = null;
if (TransactionEnded != null)
sync = TransactionEnded.Target as ISynchronizeInvoke;
if (sync != null) //sync would be null if used in ASP.NET and would have the ISYnchronizeInvoke object if used in winforms
{
if (sync.InvokeRequired)
{
TransactionEndedEventHandler tmp = new TransactionEndedEventHandler(OnTransactionEnded);
object[] args ={ sender, e };
sync.Invoke(tmp, args);
return;
}
}
if (TransactionEnded != null)
TransactionEnded(sender, e);
}
What do you think of this solution?
|
|
|
|
|
Since I don't understand what your class is used for I can't give advice as to the solution. Is this a control that has some UI (e.g. an web control or a win form control)? If not, then you really shouldn't be taking cross-thread errors into consideration. A non-UI class should really just be concerned with making sure it's state is maintained when read or updated by multiple threads.
The only exception I can really think of is if your class fires events. In this case you could follow this article[^]. This offloads the responsibility of invoking UI changes on the UI thread from the consumer of your class. Although, there may be times when no UI changes are required and it would have been better to allow the consumer to decide whether it needs to call Invoke/BeginInvoke. In general for non-UI classes, I don't use this technique.
If you can describe more about your class and how it interacts with the UI, then I can give more specific advice.
Take care,
Tom
-----------------------------------------------
Check out my blog at http://tjoe.wordpress.com
|
|
|
|
|
Creating a class that follows a "plug and play" model where it can be refrenced by any application(asp.net or winforms) that allows the programmer to use this class without worrying about thread safety(using lock) or syncronization (cross-threading). This class will can be used in a multi threaded environment or a single thread environment. This class will have events that notifies the programmer of 'transaction' statuses. This class will not be dependent on a specific UI component (win control or web control).
Plan:
Create a class that lock object while being used. Also, when the event is triggered, this class will check to see if thread sync is required. If it is, thread will be synced else thread will not be synced.
I hope I have provided enough information for you to be able to judge ifthis is a good solution. Thanks for your prompt replys!!!! The class code is below.
Class Code:
public class BaseObjectClass
{
//Private Fields
private object syncObject;
//Events
public event TransactionStartedEventHandler TransactionStarted;
public event TransactionEndedEventHandler TransactionEnded;
//Consturctors
public BaseObjectClass()
{
syncObject = new object();
}
//Event Methods
public void OnTransactionStarted(object sender, TransactionStartedEventArgs e)
{
//ISynchronizeInvoke sync = this. as ISynchronizeInvoke;
ISynchronizeInvoke sync = null;
if (TransactionStarted != null)
sync = TransactionStarted.Target as ISynchronizeInvoke;
if (sync != null)
{
if (sync.InvokeRequired)
{
TransactionStartedEventHandler tmp = new TransactionStartedEventHandler(OnTransactionStarted);
object[] args ={ sender, e };
sync.Invoke(tmp, args);
return;
}
}
if (TransactionStarted != null)
TransactionStarted(sender, e);
}
public void OnTransactionEnded(object sender, TransactionEndedEventArgs e)
{
ISynchronizeInvoke sync = null;
if (TransactionEnded != null)
sync = TransactionEnded.Target as ISynchronizeInvoke;
if (sync != null)
{
if (sync.InvokeRequired)
{
TransactionEndedEventHandler tmp = new TransactionEndedEventHandler(OnTransactionEnded);
object[] args ={ sender, e };
sync.Invoke(tmp, args);
return;
}
}
if (TransactionEnded != null)
TransactionEnded(sender, e);
}
public virtual object Insert()
{
lock(syncObject)
{
OnTransactionStarted(this, new TransactionStartedEventArgs(ItemCommand.Insert));
//Some Code
OnTransactionEnded(this, new TransactionEndedEventArgs(ItemCommand.Insert));
return s;
}
}
public virtual bool Update()
{
lock(syncObject)
{
OnTransactionStarted(this, new TransactionStartedEventArgs(ItemCommand.Update));
bool updated = false;
//Some COde
OnTransactionEnded(this, new TransactionEndedEventArgs(ItemCommand.Update));
return updated;
}
}
public virtual bool Delete()
{
lock(syncObject)
{
bool deleted = false;
OnTransactionStarted(this, new TransactionStartedEventArgs(ItemCommand.Delete));
//Some Code
OnTransactionEnded(this, new TransactionEndedEventArgs(ItemCommand.Delete));
return deleted;
}
}
}
|
|
|
|
|
In that case, I would follow this article[^] (same as the one in my previous post). This works similar to your implementation, but handles the case where there are multiple listeners to your event.
Take care,
Tom
-----------------------------------------------
Check out my blog at http://tjoe.wordpress.com
|
|
|
|
|
Are you building a control for a form?
Phil
|
|
|
|
|
How do I create menu items with several sub menu items in .NET?
M.
|
|
|
|
|
Hi,
- graphically, use Visual Designer
- programmatically: MainMenu, ContextMenu and MenuItem all inherit from Menu,
which has a MenuItems property, so you can build an entire tree of Menus by adding
MenuItems where ever you want.
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
Two questions!
By using GACUTIL!
Is there any way to remove all the assemblies of a particular public key token from GAC?
By using NGEN!
Is there any way to remove all the assemblies of a particular public key token from native code cache? AFAIK the command "NGEN uninstall *" removes all assemblies from native code cache.
Best Regards,
Mushq
Mushtaque Ahmed Nizamani
Software Engineer
Ultimus Pakistan
|
|
|
|
|
ngen /uninstall allows you to specify an individual assembly that you want to remove. So no, there's no easy way.
Deja View - the feeling that you've seen this post before.
|
|
|
|