that's strange it says already there is a version installed on the computer but in reality the version installed is softbase2011 so i don't understand why derosn't allow me to install the new version changing the name of the app.
You have to understand how Windows Installer works. Your installer had a ProductCode and UpdateCode that's the same between both versions of your app. That's why your new installer says it's already installed.
Without modifying anything, your only work around is to uninstall the previous version of the app first, then install the new one.
A quick "fix" to get your new installer to work would be to change the ProductCode. The UpgradeCode remains the same and this is going to tell MSIEXEC that the new app upgrades the old one.
I recently began working on a project in C# .Net, written in MS Visual Studio 2010, where many things are at least peculiar...
All files are in root directory, meaning there are no subdirs.
Files include several classes which, in best case, may belong to the same or a similar fact.
Even if there is only one Class in a .cs file, it doesn’t always have the same name, meanig for a Class Car the file may have a name Frm_View.cs, in other words completely irrelevant to the class name.
Hungarian notation is being used, like in the old MS times.
There is an enorm amount of internal, static and both internal static variables and functions.
There is no inheritance between classes.
There are no interfaces.
It seems to me that it is about an old C programm, which has been ported into C#, but only as far as syntax concerns.
Thanks for your replies. I am aware that C# an OOP language is. I am also aware that it is not obligatory to have inheritance or interfaces. But in this case everything is against an OOP design. And if every function in a programme can change every variable in it, then imho it has nothing to do with OOP, although in it's syntax there are always classes, since otherwise it wouldn't compile.
I wrote this message because I wanted to get a feedback from the forum, since I plan to write to my boss that this piece of code is worthless and should be rewritten with a new concept. As a matter of fact, we are being confronted with all these problems that are described in the software enginnering literature since years. We always deal with a lot of bugs and problems, no one is completely sure of what is happening, we have not a complete picture of the structure, we are steadily debugging step by step hoping to find out what changed that variable at the last moment(because any class can do that) and even the person who did program it and recently made some changes, had to search for some unexpected new errors that arose.
I think it's time to get rid of that piece of software for the simple reason that it is not as OOP designed. Any objections?
You can write object oriented code in C, and you can write mostly non-object oriented code in C#. But C is still not an object oriented language, and C# still is. So when you asked "is it OOP?" then what does that even mean?
And also, does it matter? So that program may or may not be "proper OOP design", but are you sure that's a problem? Would it help if it were?
OOP is not a silver bullet that magically solves all problems - indeed it often creates new ones.
If there is a problem with maintainability of the code, then there is a problem with the maintainability of the code. Whether it's object oriented or not doesn't necessarily imply there is a problem with the maintainability of the code, and if both are true at the same time anyway, that does not necessarily make the non-OOP-ness the cause of the problem.
TL;DR: if there is a problem with the code, fix it. If it's not OOP designed but there is no problem, why fix what isn't broken?
I wrote this message because I wanted to get a feedback from the forum, since I
plan to write to my boss that this piece of code is worthless and should be
rewritten with a new concept.
You have some code that is unlikely to have an Object Oriented design.
That however doesn't make it "worthless".
If the code is being used in the business then it is far from "worthless".
If it isn't being used then it shouldn't be changed at all.
We always deal with a lot of bugs and problems, no one is completely sure of
what is happening, we have not a complete picture of the structure, we are
steadily debugging step by step hoping to find out what changed that variable at
the last moment(because any class can do that) and even the person who did
program it and recently made some changes, had to search for some unexpected new
errors that arose.
Now those are problems. And those are problems that OOP will NOT fix.
However there are other practices that if put into place MIGHT fix those problems. Those practices can be applied to a OO and structured app. In certain cases it might be easier to apply them to OO code. But not necessarily.
It might the case that the code is badly implemented and thus it is more cost effective to rewrite it. However based on the problems listed above a rewrite MUST insure that the same problems are not allowed to exist with the rewritten code.
im developing a application ... that has some softwares which i have to install silentlt back side while installing the other on user selection... im developing using visual studio 2010 .. c# . please any one help
In a C#.net 2010 application, I would like a suggestion on how to complete the following task:
In a string field, I need to make certain the only values that are returned by a routine are:
1. alphabetic characters only,
2. The result must be in uppper case,
3. No other characters are allowed.
I want to place design surface on button control, which is located on design surface. Is there a way to place design surface inside other design surface?
I create new design control(design surface with button control as root component) in CreateInstance() of other design surface and have next exception: The CurrentContext property of the LicenseManageris currently lockedand cannot be changed.
I think, during executing of CreateInstance()(of main design surface) current design host(of main design surface) is locked, therefore I can't create other design surface.
I am writing an application and need to save some data with an incremental number.
My first thought was to use an integer that be could incremented and shoved out disk, now I am trying to do thing properly so I have come up with the following
String Path = Directory.GetCurrentDirectory();
string file_text = Directory.GetFiles(@Path, "*.txt");
int FileTotal = 0;
for (int i = 0; i <= file_text.Length - 1; i++)
Name = file_text[i].Substring(Path.Length+1);
MessageBox.Show("Next File to Written is " + FileTotal.ToString());
It looks for the file (in the bit of example code .txt ...) adds one to the total for the next one. Is this the 'correct' way of doing things or am I creating a kludge that will come back and bite me later.
Last Visit: 31-Dec-99 18:00 Last Update: 30-Sep-23 14:15