473,396 Members | 1,726 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

How to scope the number installed modules during installation time for each specific

1
Dear everybody,

I'm very sad now. I have problem with making the Setup package. Could you share with me a light.Our problem as followings:

1. I expect the deployment package contains the following features:

- The user will get the deployment package with 2 files: setupname.msi and setupname.ini

- The setupname.ini file tell us which modules the end user has permission to install (and which are not-allowed-modules).

- The setupname.ini is changed by our company and send it to customer along with the setupname.msi

2. My solution now is not good, we do as following:

- We implement a function in the CustomAction (concretely the Installer class in C#) in Install group. This function will read the setupname.ini in source folder and do deleting the "not-allowed-modules" at the end of install process.

3. Why I said my solution is not good:

- When user do repairing, the source folder path is empty. We cannot find the reason why so far. To get the source dir we now pass the source folder path through the customaction parameters (\path = "[SourceDir]/")

- When user install , the deployment package is unpacked and stored in the target folder on the end user's machine before the customaction can run. I'm afraid someone can hack it and play with our product

4. Question:

- How to get SourceDir when repairing ? Could you give me a sample source code please?
- I'm afraid very much about my bad solution, so could you please give us some advices. How to avoid that the Not-allowed-modules are unpacked and stored in the target folder?

Any help is highly appreciated.
Thank you and best regards
Vu Nguyen
Dec 11 '09 #1
0 1131

Sign in to post your reply or Sign up for a free account.

Similar topics

3
by: John | last post by:
Hi, I want to make it so my customers have to enter a license code to activate my software. Without this code, the software will only run for a period of time (7-30 days). Are there any...
4
by: Marc Tanner | last post by:
Hello, I am currently working on a eventhandling system or something similar, and have the problem of loosing scope. I have read many interesting posts on this group and the faq article about...
5
by: elzacho | last post by:
I would like to (and commonly do) define my variables in the most specific scope I can. For example... int foo(int a, int b, int c) { /* don't declare temp here if we can help it */ ... ...
10
by: Not Available | last post by:
On the host server: namespace JCart.Common public class JCartConfiguration : IConfigurationSectionHandler private static String dbConnectionString; public static String ConnectionString { get...
0
by: Stuart Whelan | last post by:
I am writing a service in C# with an internal service installer. I am running XP Pro SP with VS7.1 and .NET 1.1 It installed okay the first time, but during uninstall the app crashed. Now I...
0
by: Sijmen | last post by:
In reference to the following post by Brandon Bray from Microsoft: http://groups.google.com/groups?q=g:thl1709599354d&dq=&hl=en&lr=&ie=UTF-8&selm=%238CXKwM3BHA.2488%40tkmsftngp04 Among other...
6
by: Washington | last post by:
Is possible to find where program is installed in the cases if path is changed during installation? Can you point me to specific information? If possible, real code sample. Thanks I appreciate...
6
by: Ben Finney | last post by:
Howdy all, I'm improving an existing application that's partly written using Python and the standard library. Many of the improvements I want to make can be done by using third-party free...
14
by: Phil | last post by:
I have been using this code to display the version number, and this has worked well, but I am now changing from using the ClickOnce publishing to a proper setup project, and this no longer works. ...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.