Tag: windows

如何从64位应用程序连接到Windows Phone 7

我有一个32位程序(用C ++编写)可以连接到一些不同的设备,只要它是32位一切正常。 但是,现在我需要将其构建为64位程序,但后来我遇到了Windows Phone 7的一些问题。 我发现我重建为64位的dll(用C#编写)会在此行抛出exception: MultiTargetingConnectivity connectivity = new MultiTargetingConnectivity(CultureInfo.CurrentUICulture.LCID); 例外是: An unhandled exception of type ‘Microsoft.SmartDevice.Connectivity.DatastoreException’ occurred in Microsoft.SmartDevice.Connectivity.dll Additional information: Retrieving the COM class factory for component with CLSID {349AB2E8-71B6-4069-AD9C-1170849DA64C} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)). (例如,如果我尝试运行此示例程序,它以32位工作,但在同一行中以64位引发该exception) 当我在注册表中搜索该CLSID时,我找到了“C:\ Program Files(x86)\ Common Files \ […]

具有管理员权限的Windows窗体启动

我有一个需要管理员权限才能运行的Windows窗体应用程序,为此,我使用此代码: 完成开发的下一步是在Windows重启,关闭再打开或用户登录后启动此窗体应用程序。 这是我的问题,这个应用程序需要管理员权限,需要在系统启动后启动,但我不知道要做到这一点。 我做的事情: 将应用程序可执行路径放在regedit上 Registry.CurrentUser.OpenSubKey(“SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run”, true); 我创建了Windows服务项目 https://docs.microsoft.com/en-us/dotnet/framework/windows-services/walkthrough-creating-a-windows-service-application-in-the-component-designer 这些选项不起作用,有人可以帮助我吗? 谢谢。

获取USB适配器的com端口号

我正在尝试编写一个程序,使用arduino mega和基于FTDI的USB转RS485适配器。 我想让程序用户友好,因此我不会让用户手动检查com端口号,但我想自动检测它。 这是代码的一小部分 ManagementScope scope = new ManagementScope(); SelectQuery query = new SelectQuery(“SELECT * FROM Win32_SerialPort”); ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query); try { foreach (ManagementObject item in searcher.Get()) { String description = item[“Description”].ToString(); String deviceID = item[“DeviceID”].ToString(); Console.WriteLine(“Porta ” + description + ” deviceID ” + deviceID); if (description.Contains(“USB Serial Port”)) return deviceID; […]

C#确定操作系统是Windows 7或Windows Windows 2008

我使用的是.NET framework 3.5版本,该程序必须检测所有Windows版本(包括Windows XP,Windows Vista,Windows 7,Windows 8,Windows 10,Windows Server 2008,Windows Server 2008 R2,Windows Server 2012)。 问题是如何在以下情况下确定操作系统? Windows Vista和Windows Server 2008版本号均为6.0。 Windows 7和Windows Server 2008 R2版本号均为6.1。 Windows 8和Windows Server 2012版本号均为6.2。 我找到了下面的代码,但我无法使用,因为我使用的是.NET Framework 3.5。 var name = (from x in new ManagementObjectSearcher(“SELECT * FROM Win32_OperatingSystem”).Get().OfType() select x.GetPropertyValue(“Caption”)).FirstOrDefault(); return name != null ? name.ToString() : “Unknown”; 我怎么解决这个问题?

阻止允许禁止用户访问共享文件夹的WNetAddConnection2类

我开发了C#windows应用程序。 操作系统是Windows 7 要求:使用带有凭据的代码使用WNetAddConnection2类访问网络共享文件夹“测试”。 限制:某些用户可以访问此共享文件夹“Test”,但对于其他用户,则设置“拒绝”共享权限。 在代码WNetAddConnection2validation错误的用户名/密码,它会给我错误。 例如 来自局域网的“用户A”尝试使用run command访问共享文件夹“测试”,他无法访问“访问被拒绝”,因为他没有权限。 但问题是WNetAddConnection2类允许’用户A’成功建立网络连接。 感染“WNetAddConnection2允许来自域的所有用户”。 类正在validation访问权限。 代码是 private void btnValidate_Click(object sender, EventArgs e) { bool valid = false; try { NetworkCredential NC = new NetworkCredential(txtUserName.Text.Trim(), txtPassword.Text.Trim()); } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } } public class NetworkConnection : IDisposable { string _networkName; uint dwFlags; public NetworkConnection(string networkName, NetworkCredential credentials) […]

UWP app:FileOpenPicker PickSingleFileAsync()无法等待

我试图让用户使用FileOpenPicker类浏览文件,但是当我使用PickSingleFileAsync函数等待时,我收到以下错误: ‘IAsyncOperation’不包含’GetAwaiter’的定义,并且没有扩展方法’GetAwaiter’接受类型’IAsyncOperation’的第一个参数可以找到(你是否缺少’System’的using指令?) 这是在最后一行给出错误的函数: private async void browseFileButton_Click(object sender, RoutedEventArgs e) { FileOpenPicker filePicker = new FileOpenPicker(); filePicker.ViewMode = PickerViewMode.Thumbnail; selectedFile = await filePicker.PickSingleFileAsync(); } Microsoft提供的文档包含一个以相同方式使用FileOpenPicker的示例。 有没有人有这个问题或有任何人解决这个问题?

Visual Studio设计器中的抽象通用UserControlinheritance

在我的一个项目中,我正在使用抽象的UserControl。 为了能够在Visual Studio中设计此控件,我使用了本答案中提出的代码。 现在我想使用另一个抽象的UserControl,它也是通用的。 但如果我这样做 [TypeDescriptionProvider(typeof(AbstractControlDescriptionProvider<MyBaseControl, UserControl>))] 我收到了编译器错误 CS0416:属性参数不能使用类型参数 删除类型参数显然也无法编译。 我无法从非generics基类派生MyBaseControl,因为它已经从通用基类派生,所以我尝试使用接口进行装饰并使用它如下: [TypeDescriptionProvider(typeof(AbstractControlDescriptionProvider))] 这确实编译但是当我打开设计视图时,我的控件不会被渲染,而是我得到了错误 提供的generics参数的数量不等于generics类型定义的arity。 有办法解决这个问题吗?

无声安装

我正在使用C#编写一个InstallerClass作为我的安装程序的自定义操作,我可以使用InstallerClass成功运行外部exe(安装),但是当我尝试在InstallerClass使用/quiet时,它不会安装exe。 但是我可以在命令提示符下使用/quiet以静默方式成功安装它。 是否有任何原因或者如何使用C#以静默模式安装? 以下是我在Commit方法中使用的代码(overriden): Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.FileName = pathExternalInstaller; p.StartInfo.Arguments = “/quiet”; p.Start();

在.NET中找到进程树

我正在寻找一种简单的方法来查找流程树(如Process Explorer之类的工具所示),使用C#或其他.NET语言。 找到另一个进程的命令行参数(System.Diagnostics.Process上的StartInfo对于当前进程以外的进程似乎无效)也很有用。 我认为这些事情只能通过调用win32 api来完成,但我很高兴被certificate是错误的。

如何检测Windows 7所需的重新启动

我正在开发一个项目,在Windows 7 PC上安装了几个软件和驱动程序。 无需用户输入即可使用。 现在有一个问题:如何在此程序中确定是否需要重新启动才能完成安装(可以是驱动程序或软件)。 我们正在开发嵌入式Windows 7,并且没有启用任务栏或任何工具提示或类似的东西可见。 软件以静默方式安装。