小编Dul*_*ttu的帖子

如何在C#中使用DllImport和接口?

我在代码中有几个DllImports,user32.dll我认为它们是在一个接口中声明的.但是,这给了我的错误说法public,static,extern不是每个项目有效.

示例接口代码如下:

public interface IWindowsFunctions
{
   [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
   static extern int MessageBox(int hWnd, string msg, string title, uint flags);
}
Run Code Online (Sandbox Code Playgroud)

是否有任何特定的方式在界面中使用它,或者是否有替代或接口不可能?

谢谢

c# interface dllimport

3
推荐指数
1
解决办法
7931
查看次数

如何在C#中的installerclass中获取msi路径

我想知道是哪里的路径msi位于whithin的InstallerClass,我如设置自定义操作使用.

我尝试使用类似的属性path,SrcDir在等Context.Parameters,但这些值不exsist(抛出NullReferenceException).是否有任何其他方式获得该路径或任何理由为什么这些值为空?

谢谢

c# windows-installer managedinstallerclass

3
推荐指数
1
解决办法
3131
查看次数

c#构造函数的问题

使用Asp.Net-MVC音乐商店教程,具体页面位于:

http://www.asp.net/mvc/tutorials/mvc-music-store-part-3

<ul>    
    @foreach (var genre in Model)  
    {  
        <li>
            @Html.ActionLink(genre.Name,"Browse", new { genre = genre.Name })
        </li>  
    }  
</ul>    
Run Code Online (Sandbox Code Playgroud)

变量类型是在Controller类中创建的Object的引用,它具有一个属性 - Name,我无法理解这个new{genre=genre.Name}实例化赋值.有人可以给我一个关于这种语言功能的链接或解释吗?

c# constructor asp.net-mvc-3

2
推荐指数
1
解决办法
126
查看次数

在哈德逊定期建造

我迄今使用Periodic buildHudson其中的时间表* * * * *生成项目每分钟和5 * * * *建立每x项目:05,X + 1:05等.

但是每5分钟建一个项目的方法是什么?(或任何给定的时间段)

谢谢

hudson build

2
推荐指数
1
解决办法
1644
查看次数

Excel Vba - 如何从Application.Caller获取工作表名称

因为它是可能获得使用Application.Caller.Worksheet.Parent.Name和调用工作簿名称和单元格地址Application.Caller.Address,用于一个名为Excel函数,有没有办法让Excel工作表名称(如Sheet1中)也使用Application.Caller

excel vba excel-vba

2
推荐指数
1
解决办法
1万
查看次数

浏览安装后的NSIS目录页面选择后添加"$ {PRODUCT_NAME}"

我有一个带有目录页面的简单NSIS脚本,用户可以在其中选择要安装应用程序的目录.请参阅下面的示例,如果已安装该应用程序,则会从注册表中获取值,或者使用www root或"program files\publisher\product name".

问题是,当我单击目录页面上的浏览并选择特定目录(例如:c:\ test)时,当我关闭浏览对话框时,定义PRODUCT_NAME会自动添加到路径中:c:\ test\Invoice Management Workflow .如何避免自动添加产品名称?

!define PRODUCT_NAME "Invoice Management Workflow"

!insertmacro MUI_DEFINES
!insertmacro MUI_PAGE_WELCOME
Page directory DirPre
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_UNPAGE_INSTFILES

Function DirPre
    ; set the INSTDIR to 
    ReadRegStr $0 HKLM "Software\${PRODUCT_PUBLISHER}\${PRODUCT_NAME}" "InstallDirectory"
    ${If} $0 != ""
        StrCpy $INSTDIR $0
        Abort
    ${Else}
        ; get the install dir from reg
        ReadRegStr $0 HKLM "SOFTWARE\Microsoft\InetStp" "PathWWWRoot"
        ${If} $0 != ""
            StrCpy $INSTDIR $0
        ${EndIf}
    ${EndIf}
FunctionEnd
Run Code Online (Sandbox Code Playgroud)

directory install nsis

1
推荐指数
1
解决办法
3019
查看次数

自定义现有的NSIS MUI2页面

我已经成功地添加了一个复选框以NSIS安装的完成页面定义功能MUI_PAGE_CUSTOMFUNCTION_PREMUI_PAGE_CUSTOMFUNCTION_SHOW使用完成页MUI.

但如果我包括MUI2而不是MUI,则不会显示复选框.我想有一些不同MUI2MUI相对于这一点.我找不到文件,如果有人知道,我可以知道吗?

谢谢

checkbox nsis mui

1
推荐指数
1
解决办法
9044
查看次数

按代码创建大量PictureBox - 只有一个是可见的

我试图使用以下代码绘制大量图像实例:

PictureBox[] sprites = new PictureBox[100];

private void Game_Load(object sender, EventArgs e)
{
    PictureBox mainSprite = new PictureBox();
    Bitmap img = new Bitmap(SpriteTest.Properties.Resources.Image); //Load a png image

    mainSprite.Size = new Size(16, 16);
    mainSprite.Image = img;

    for(var i = 0; i < sprites.Length; i++)
    {
        sprites[i] = mainSprite;

        //Keeping it simple for now with a single row of sprites
        sprites[i].Location = new Point(i * 16, 8); 
    }

    Game.ActiveForm.Controls.AddRange(sprites);
}
Run Code Online (Sandbox Code Playgroud)

在运行代码时,只显示最后一张图像.在调试代码时,一切似乎都按预期工作.我还可以验证该位置实际上是否正在更新.

我还尝试使用for循环中的以下代码以不同的方式添加控件(没有运气);

this.Controls.Add(sprites[i]);
Run Code Online (Sandbox Code Playgroud)

我多次遇到过这个问题,特别是当我尝试以类似的方式创建许多GroupBox时.在我试图寻找解决方案时,我在网上搜索了几个小时,没有任何修复过.

c# picturebox

0
推荐指数
1
解决办法
5186
查看次数

刷新按钮的图标

我需要找到一个像IE中的"刷新"按钮的图像,我可以将其用作按钮.该按钮将刷新我的一个表单上的数据.

我在哪里可以找到这样的图像,如何让它出现在按钮上?

c# icons image button

0
推荐指数
1
解决办法
9494
查看次数