小编Raf*_*ari的帖子

如何将WinForms TextBox的前几个字符设置为只读?

我有一个带有文本框的表单,用于输入URL.我需要将(http://)作为预定义的值添加到此文本框中,并希望它只读,这样用户就无法删除http://但是他可以在它之后写.

在此输入图像描述

任何帮助将受到高度赞赏.

.net c# winforms

50
推荐指数
5
解决办法
6134
查看次数

如何从嵌入式资源中提取文件并将其保存到磁盘?

我正在尝试使用CSharpCodeProvider编译下面的代码.该文件已成功编译,但是当我单击生成的EXE文件时,我收到错误(Windows正在搜索此问题的解决方案)并且没有任何反应.

当我使用CSharpCodeProvider编译下面的代码时,我MySql.Data.dll使用以下代码行添加了作为嵌入式资源文件:

if (provider.Supports(GeneratorSupport.Resources))
    cp.EmbeddedResources.Add("MySql.Data.dll");
Run Code Online (Sandbox Code Playgroud)

该文件已成功嵌入(因为我注意到文件大小增加).

在下面的代码中,我尝试提取嵌入的DLL文件并将其保存到System32,但下面的代码由于某种原因不起作用.

namespace ConsoleApplication1
{
    class Program
    {
        public static void ExtractSaveResource(String filename, String location)
        {
            //Assembly assembly = Assembly.GetExecutingAssembly();
            Assembly a = .Assembly.GetExecutingAssembly();
            //Stream stream = assembly.GetManifestResourceStream("Installer.Properties.mydll.dll"); // or whatever
            //string my_namespace = a.GetName().Name.ToString();
            Stream resFilestream = a.GetManifestResourceStream(filename);
            if (resFilestream != null)
            {
                BinaryReader br = new BinaryReader(resFilestream);
                FileStream fs = new FileStream(location, FileMode.Create); // Say
                BinaryWriter bw = new BinaryWriter(fs);
                byte[] ba = new byte[resFilestream.Length];
                resFilestream.Read(ba, 0, ba.Length);
                bw.Write(ba);
                br.Close();
                bw.Close(); …
Run Code Online (Sandbox Code Playgroud)

.net c# embedded-resource csharpcodeprovider

48
推荐指数
3
解决办法
7万
查看次数

如何将嵌入式资源作为字节数组读取而不将其写入磁盘?

在我的应用程序中,我使用CodeDom.Compiler从source.cs文件编译另一个程序,我在编译时嵌入了一些资源(exe和dll文件),使用:

 // .... rest of code

if (provider.Supports(GeneratorSupport.Resources))
{
    cp.EmbeddedResources.Add("MyFile.exe");
}
if (provider.Supports(GeneratorSupport.Resources))
{
    cp.EmbeddedResources.Add("New.dll");
}
// ....rest of code 
Run Code Online (Sandbox Code Playgroud)

在编译文件中,我需要将嵌入资源作为字节数组读取.现在我通过使用下面的函数和使用将资源提取到磁盘来实现这一点

File.ReadAllBytes("extractedfile.exe");
File.ReadAllBytes("extracteddll.dll");
Run Code Online (Sandbox Code Playgroud)

我使用此函数将两个文件解压缩到磁盘后执行此操作:

public static void ExtractSaveResource(String filename, String location)
{
    //  Assembly assembly = Assembly.GetExecutingAssembly();
    System.Reflection.Assembly a = System.Reflection.Assembly.GetExecutingAssembly();
    // Stream stream = assembly.GetManifestResourceStream("Installer.Properties.mydll.dll"); // or whatever 
    // string my_namespace = a.GetName().Name.ToString();
    Stream resFilestream = a.GetManifestResourceStream(filename);
    if (resFilestream != null)
    {
        BinaryReader br = new BinaryReader(resFilestream);
        FileStream fs = new FileStream(location, FileMode.Create); // say 
        BinaryWriter bw = new …
Run Code Online (Sandbox Code Playgroud)

.net c# codedom embedded-resource system-codedom-compiler

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

使用加密源代码进行编码.可能与否?

我创建了一个简单的SFX应用程序,它适用于压缩/打包文件.当有人单击输出文件时,系统将提示输入密码,如果密码输入正确,则文件会在特定例程后自行解密.

一位客户说我的文件是病毒,所以我在VirusTotal.com上在线扫描文件,我看到该文件是由扫描结果中的 avira检测到的.我逐行检查源代码,我发现检测到以下代码行.

    public class SimplerAES
    {

        private static byte[] key = { 88, 54, 54, 147, 99, 201, 41, 80, 58, 100, 5, 64, 213, 99, 14, 15, 154, 35, 110, 36, 124, 25, 115, 23, 56, 44, 65, 7, 45, 254, 1, 54 };
        private static byte[] vector = { 33, 8, 121, 196, 223, 45, 63, 100, 1, 32, 18, 87, 1, 158, 119, 111};
        private ICryptoTransform encryptor, decryptor;
        private UTF8Encoding encoder;

        public SimplerAES()
        {
            RijndaelManaged …
Run Code Online (Sandbox Code Playgroud)

.net c#

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

检查表单是否已显示的正确方法?

我已经创建了一个任务管理应用程序,我想实现2个用户聊天特定任务的能力.

Form1我有一个计时器,检查数据库中发送的任何新消息.找到新消息后,将显示聊天表单以显示消息.

直到现在,一切都按预期工作,但我只有一个问题.

问题:第 一次发现新消息时,会出现聊天窗口,但是当找到另一个新消息时,会出现另一个窗口,并且对于每个新消息,我都会创建一个新的聊天窗口实例.

我正在使用的代码:

 List<string> tasksToDiscuss = checkForTasksToDiscuss(fullname);

        if (tasksToDiscuss.Count > 0) { 
 // open the chat window directly minimized
 Form14 frm14 = new Form14();
 frm14.get_from = fullname;
 frm14.get_to = tasksToDiscuss[1];
 frm14.get_task_id = int.Parse(tasksToDiscuss[3]);
 // set message as read
 if (setMessageAsRead(tasksToDiscuss[1], fullname, int.Parse(tasksToDiscuss[3])))
                    {
                        // now show the chat window minimized
                        frm14.Show();
                    }

 }
Run Code Online (Sandbox Code Playgroud)

我试图更换线:
frm14.Show();frm14.ShowDialog();

我注意到,当收到新消息时,会显示聊天窗口(form14),当从同一用户收到另一条消息时,不会出现新的聊天窗口,但问题是我关闭聊天窗口后,它没有即使我收到新消息,也不会再出现了.

我的想法是将聊天窗口(Form14.Text)更改为用户全名,下次收到消息时,我检查特定窗口是否已打开,然后不要打开它,否则我显示形式使用该.Show()方法.

如果收到新消息并且打开了它,这是否是使窗口不显示的正确方法?以及如何根据文本(标题栏文本)检查窗口是否打开?

感谢您花时间阅读我的问题.任何帮助将受到高度赞赏

.net c# winforms

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

如何以编程方式创建Windows窗体?

我有一个唯一的c#源文件source.cs,我使用CSharpCodeProvider从构建器编译来获取可执行文件.

我会在构建器上添加一个选项,是否在应用程序启动时显示"关于"表单.

如何创建一个标题为关于我们的表单然后添加控件(标签,RichTextEdit等..)

就像是

if (display_about_dialog) {
// code to display the form }
Run Code Online (Sandbox Code Playgroud)

任何帮助将受到高度赞赏

.net c# csharpcodeprovider

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

i == 0和0 == i之间有区别吗?

第一个代码:

  if(i==0) {// do instructions here}
Run Code Online (Sandbox Code Playgroud)

第二个代码:

  if(0==i) { // do instructions here }
Run Code Online (Sandbox Code Playgroud)

块之间有什么区别?

php c c# c++

8
推荐指数
3
解决办法
909
查看次数

哪个是使用带有foreach循环的try-catch块的最佳实践?

在性能方面使用try {} catch {}块的最佳做法是什么?

foreach (var one in all)
{
    try
    {
        //do something
    }
    catch { }
}
Run Code Online (Sandbox Code Playgroud)

要么

try
{
    foreach (var one in all)
    {
        // do something
    }
}
catch { }
Run Code Online (Sandbox Code Playgroud)

c#

8
推荐指数
3
解决办法
8352
查看次数

如何比较两个可执行文件?

我有一个不需要UAC警告的文件.我使用C#.NET将文件复制到另一个位置

 File.Copy("Original.exe", "Copy.exe");
Run Code Online (Sandbox Code Playgroud)

现在我看到Copy.exe需要在Windows 7/Vista下运行UAC警告.

如何在Original.exe和Copy.exe之间进行比较,以确切了解文件发生了什么并手动更改,以便它不再需要UAC.我可以使用哪种工具来实现这一目标?

在此输入图像描述

可执行的是同一个文件:如何知道这两个文件之间的区别?

.net c# visual-studio-2010

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

如何在Delphi中显示带有两个按钮(继续/关闭)的对话框

我想创建一个警告对话框,询问用户注册期间输入的信息是否正确,并询问他是否要继续或关闭该对话框并更正其信息.

delphi delphi-2010

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