在使用C#的Windows中,如何从我的项目中获取软件的安装路径(例如,考虑NUnit或任何其他软件,如MS word等)?另外,如何设置我们在环境变量中设置的路径变量,以便我们只需通过命令提示符运行应用程序.
就像我在"C:\ Program Files"中安装NUnit一样,我可以通过在cmd提示符中给出"NUnit"来运行它,但如果我安装在不同的位置,我就不能这样做. 我需要从我的项目中获取NUnit的位置或路径或我系统中安装的任何其他软件(具有Windows XP).
编辑:就像我可以从注册表中获取已安装程序的路径.HKEY_CURRENT_USER-> SOFTWARE
如何生成随机数.诸如java等语言如何生成随机数,尤其是如何为GUID完成.我发现像Pseudorandomnumber生成器这样的算法使用初始值.
但我需要创建一个随机数程序,其中一次发生的数字应该永远不会重复,即使系统重新启动等等.我认为我需要将值存储在任何地方,以便我可以检查数字是否重复,但当列表超出限制时,它会太复杂.
这是打印字符串字符排列的标准函数:
void permute(char *a, int i, int n)
{
int j;
if (i == n)
printf("%s\n", a);
else
{
for (j = i; j < n; j++) //check till end of string
{
swap((a+i), (a+j));
permute(a, i+1, n);
swap((a+i), (a+j)); //backtrack
}
}
}
void swap (char *x, char *y)
{
char temp;
temp = *x;
*x = *y;
*y = temp;
}
Run Code Online (Sandbox Code Playgroud)
它工作正常,但有一个问题,它还打印一些重复的排列,exapmle:
如果字符串是"AAB"
输出是:
AAB
ABA
AAB
ABA
BAA
BAA
Run Code Online (Sandbox Code Playgroud)
这也有3个重复的条目.
有没有办法防止这种情况发生?
-
谢谢
Alok Kr.
如何在C中找到数字的阶乘(从1到10),而不使用:
仅供参考:我在C aptitude中找到了这个问题.
考虑我在C#中执行方法'Method1'.一旦执行进入方法,我检查几个条件,如果它们中的任何一个是假的,那么应该停止执行Method1.我怎么能这样做,即可以在满足某些条件时执行方法.
但我的代码是这样的,
int Method1()
{
switch(exp)
{
case 1:
if(condition)
//do the following. **
else
//Stop executing the method.**
break;
case2:
...
}
}
Run Code Online (Sandbox Code Playgroud) 我正在用C#VS2005开发一个窗口应用程序.我有一个dataGridView,其中第一列有Checkboxes.现在我希望Column标题也是一个CheckBox,如果我选择列中的所有Checkboxex应该被选中.我怎样才能做到这一点.?我参考了Code Project链接
但如果我使用它,如果我点击FirstCell(而不是标题),所有下面的单元格都会被选中.但我想在Column标题中使用CheckBox.我怎样才能做到这一点.?
我有一个包含的ArrayList,
[0] = "1"
[1] = "10"
[2] = "2"
[3] = "15"
[4] = "17"
[5] = "5"
[6] = "6"
[7] = "27"
[8] = "8"
[9] = "9"
Run Code Online (Sandbox Code Playgroud)
现在我需要对数组列表进行排序,使其成为,
[0] = "1"
[1] = "2"
[2] = "5"
[3] = "6"
[4] = "8"
[5] = "9"
[6] = "10"
[7] = "15"
[8] = "17"
[9] = "27"
Run Code Online (Sandbox Code Playgroud)
最后,我将从ArrayList获取值并将它们用作'int'值.我怎样才能做到这一点?或者我应该首先将它们转换为int然后对它们进行排序.
我想更改在VS2005中构建VC++项目的构建系统路径.
当我尝试构建项目时,我收到一个错误,指出无法打开指定的头文件.我有头文件"Microsoft SDKs\Windows\v7.0\Include".
但是,"Microsoft SDKs\Windows\v7.0\Include"当我尝试通过代码打开该头文件时,我在"错误"对话框中找到了"构建系统路径"中的路径.
所以我想将构建系统路径中的路径更改为"Microsoft SDKs\Windows\v7.0\Include".
我怎样才能做到这一点.?如何在VS2005中打开构建系统路径.
我有以下课程。
// Adding Lombok's @Data / @Value gives an error
public class Sample {
String id;
String name;
Dummy[] entries;
@JsonCreator
// @Builder --> This gives same error
private Sample(
@JsonProperty("id") final String id,
@JsonProperty("name") final String name,
@JsonProperty("entries") @NonNull final Dummy[] entries) {
this.id = id;
this.name = name;
this.entries = entries;
}
}
Run Code Online (Sandbox Code Playgroud)
如果我添加 Lomobok 注释,则会收到以下错误。我们严重依赖 Lombok,我正在尝试弄清楚如何确保我不会返回可变对象。
EI_EXPOSE_REP: May expose internal representation by returning reference to mutable object
EI_EXPOSE_REP2: May expose internal representation by incorporating reference to mutable …Run Code Online (Sandbox Code Playgroud)