天道酬勤,学无止境

driver

Laravel connection MSSqL server works with cli, but not in browser

问题 安装dll's以与 MSSqL 服务器一起使用后,命令php artisan migrate正确运行,并且在db中创建了表。 所以我认为该连接适用于该应用程序。 然后我使用命令php artisan make:auth (不使用数据库连接)来搭建身份验证文件。 现在,当我尝试注册任何人时,我会收到错误: PDO 异常 (1/2) 找不到驱动程序 和 PDOExeption (2/2) 找不到驱动程序(从.....选择计数(*) 现在我尝试查看使用cli命令是否仍然有效,并且php artisan migrate:rollback和php artisan migrate仍然有效。 环境:安装了 xampp 的 Windows 7。 版本:Laravel 5.4,php 7.1 没关系,但这里是我的.env和database.php文件的一部分: `database.php` 'sqlsrv' => [ 'driver' => 'sqlsrv', 'host' => env('DB_HOST', '10.0.0.40'), 'port' => env('DB_PORT', '1433'), 'database' => env('DB_DATABASE', 'sqlcon'), 'username' => env('DB_USERNAME', 'sa'), 'password' =

2022-05-17 03:01:29    分类:技术分享    php   sql-server   driver   laravel-5.4

NVIDIA-SMI failed. Could'nt communicate with Nvidia driver [duplicate]

问题 这个问题在这里已经有了答案: 错误:NVIDIA-SMI 已失败,因为它无法与 NVIDIA 驱动程序通信4 个答案 1 年前关闭。 我在 gpu 节点上运行云实例。 我安装了 CUDA,nvidia-smi 显示了驱动程序的详细信息,内存利用率。 几天后,我遇到此错误“NVIDIA-SMI 已失败,因为它无法与 NVIDIA 驱动程序通信。确保已安装并运行最新的 NVIDIA 驱动程序”。 我安装了最新的驱动程序(用于 Tesla M40 Gpus 的 Nvidia-375.39)。 我仍然面临同样的问题。 有什么方法可以 i) 调试为什么 nvidia-smi 无法与驱动程序通信? ii) 检查驱动程序是否正常运行。 回答1 这是一个操作系统问题。 解决方案将取决于您的操作系统。 例如,如果您运行的是 Ubuntu 16,则解决方案可能是这样的: 卸载/清除所有 Nvidia 驱动程序 sudo apt-get remove --purge nvidia* && sudo apt autoremove 从 Nvidia 网站下载 Nvidia 驱动程序(.run 文件) 回答2

2022-05-16 04:04:07    分类:技术分享    driver   gpu   nvidia

How get current process image file full name in filter driver?

问题 在过滤器驱动程序中,我可以调用IoGetCurrentProcess来获取PEPROCESS结构,然后调用PsGetProcessImageFileName来获取文件名。 我的问题是如何获得过程映像文件的全名? 回答1 您可以使用信息类为 27 的ZwQueryInformationProcess 。以下代码使用此例程从进程的句柄中获取完整的图像文件名。 NTSTATUS GetProcessNameByHandle(_In_ HANDLE ProcessHandle, _Out_ PUNICODE_STRING *Name) { ULONG retLength = 0; ULONG pniSize = 512; PUNICODE_STRING pni = NULL; NTSTATUS status = STATUS_UNSUCCESSFUL; do { pni = (PUNICODE_STRING)ExAllocatePoolWithTag(PagedPool, pniSize, POOL_TAG); if (pni != NULL) { status = ZwQueryInformationProcess(ProcessHandle, 27, pni, pniSize, &retLength); if (!NT_SUCCESS(status)) {

2022-05-14 23:49:26    分类:技术分享    c++   c   process   driver   filter-driver

KMDF IOCTL communication with nonpnp driver?

问题 我正在尝试编写一个 Windows 非 pnp 内核模式软件驱动程序,它应该与我的用户模式应用程序进行双向通信(用户发送请求并且驱动程序响应)。 问题是我找不到示例或文档——msdn 示例驱动程序远未编译——如何使用非 pnp 驱动程序处理 IOCTL 请求。 我在研究上浪费了几天时间,但无法让它发挥作用。 我只是想问一下这种沟通方式是否是推荐的方式,并且会感激一切能帮助我完成项目的东西,比如易于理解的文档或简单的示例驱动程序。

2022-05-14 19:13:03    分类:技术分享    c   windows   kernel   driver   ioctl

Are there Powershell cmdlets that install and remove Windows drivers?

问题 注意:对于这个问题,当我提到“Windows 驱动程序”时,我指的是 .inf 和相关文件,否则可以通过右键单击 .inf 并在 Windows 资源管理器中单击“安装”来安装这些文件。 我不是指任何可能安装驱动程序的 setup.exe 样式的可执行文件。 存在以下情况: Get-WindowsDriver -online - 一个 Powershell Cmdlet,输出正在运行的系统的当前安装的驱动程序 Add-WindowsDriver - 将驱动程序添加到脱机映像的 Powershell Cmdlet。 相应的 Remove-WindowsDriver 可用于从脱机映像中删除驱动程序。 dpinst.exe - 一个命令行工具,可用于将驱动程序安装到正在运行的系统。 dpinst.exe /u可用于卸载驱动程序。 但是,我还没有找到相应的 Powershell Cmdlet,它支持在正在运行的系统上安装和卸载驱动程序。 我确信我可以将dpinst.exe包装在一些 powershell 中,但是如果存在更多的 Powershell 原生方法,我想避免映射命令行参数和解析输出。 是否存在在正在运行的系统上安装和卸载 Windows 驱动程序的 Powershell Cmdlet? 是否有其他方法可以使用不涉及dpinst.exe的 Powershell 安装和卸载

2022-05-11 21:11:04    分类:技术分享    windows   powershell   driver   powershell-cmdlet

Where to install device drivers to make docker recognize the device?

问题 我有一些在 ubuntu 上运行的二进制文件,它们控制各种设备,如板载/usb wifi/蓝牙芯片。 有些芯片需要额外的驱动程序。 我的猜测是仅仅将驱动程序安装到 docker 镜像是不够的,主机操作系统必须有驱动程序。 它是否正确? 如果是,如果主机已经需要,为什么 docker 映像根本需要任何驱动程序? docker image 如何正确委托给主机? 这些是否需要为每个主机操作系统上的每个驱动程序进行硬编码? 同样从这个角度来看,docker 是否需要比 VM 更多或更少的硬编码? 我觉得答案可能取决于设备如何呈现给 docker 以及驱动程序必须在哪里运行(例如内核空间与用户空间)。 谢谢! 回答1 这将取决于设备和驱动程序。 大多数驱动程序都需要内核的一些支持,在这些情况下,您的主机内核必须提供该功能。 某些驱动程序的功能、依赖库和应用程序可能在用户空间中实现(例如软件包 libusb、usbutils...),并且您的容器应该安装这些软件包。 而且,在运行容器时,您必须明确指示 Docker 映射容器中的设备(任何 /dev/*)。 你有两个选择: 使用带有选项--device的docker run 在特权模式下使用 docker docker run将设备映射为卷(选项-v ) --privileged=true

2022-05-10 08:11:15    分类:技术分享    wifi   docker   virtual-machine   driver

What is blocking driver installation in Windows?

问题 我在 Windows 中编写了一个 C 程序,它使用了一些来自 WinDivert 的预编译文件。 我的程序使用来自 WinDivert 的 .dll 和 .dll 中的一些函数安装 WinDivert.sys 驱动程序。 还有一些来自 WinDivert 的文件是其中的一部分(一个 .lib、一个 .inf 和另一个 .dll)。 问题是在我的一台计算机(Windows 8.1 64 位)上,一切正常。 但是,当我尝试在我的笔记本电脑 (Windows 8.1 64)、我朋友的笔记本电脑 (Windows 7 64) 或另一个 Windows 7 64 台式机上使用该程序时,某些东西会阻止驱动程序的安装。 我不确定是什么阻止了它或如何阻止它被阻止,因为在所有计算机上: +我正在使用管理员配置文件 +在管理员命令提示符下运行程序 +尝试禁用防火墙、防病毒等(尽管在正常工作的计算机上运行这些都可以正常运行) +据我所知,我所有的安全设置都是一样的 +注意:驱动程序确实有一个有效的签名。 为什么驱动程序可以完美地安装在一台计算机上,而不能安装在其他三台计算机上? 可能是什么问题? 回答1 WinDivert 常见问题解答中记录了 1275 错误的主要原因。 但是,可能还有其他我不知道的原因(也许那里的一些专家可以提供帮助?) 要尝试的另一件事是以下命令: sc stop

2022-05-07 10:56:03    分类:技术分享    c   windows   installation   driver   wfp

Why does SetupDiEnumDriverInfo give two version numbers for my driver

问题 我正在尝试以编程方式获取驱动程序的版本号。 这似乎是通过使用SetupDiEnumDriverInfo来获取SP_DRVINFO_DATA结构并检查DriverVersion field来完成的。 以下代码有效,但为同一驱动程序返回两个不同版本。 我的设备是一个自定义 USB 设备,只有一个 .sys 文件。 只有一台设备连接到我的机器。 我指定DIGCF_PRESENT只查询当前连接设备的驱动程序。 int main(void) { // Get the "device info set" for our driver GUID HDEVINFO devInfoSet = SetupDiGetClassDevs( &GUID_DEVINTERFACE_USBSPI, NULL, NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE); // Cycle through all devices currently present for (int i = 0; ; i++) { // Get the device info for this device SP_DEVINFO_DATA devInfo; devInfo.cbSize = sizeof(SP_DEVINFO_DATA); if (!SetupDiEnumDeviceInfo

2022-05-05 11:59:03    分类:技术分享    c++   c   windows   driver

How get current process image file full name in filter driver?

In filter driver I can call IoGetCurrentProcess to get an PEPROCESS structure, and than call PsGetProcessImageFileName to get file name. My questions is how I can get full name of the process image file?

2022-05-02 22:08:32    分类:问答    c++   c   process   driver   filter-driver

NVIDIA-SMI failed. Could'nt communicate with Nvidia driver [duplicate]

This question already has answers here: Error: NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver (4 answers) Closed 1 year ago. I am running a cloud instance on a gpu node. I installed CUDA and nvidia-smi showed the driver details, memory utlilization. After a couple of days, I face this error "NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running". I installed the latest driver (Nvidia-375.39 for Tesla M40 Gpus). I still face the same issue. Is there any way to i) debug why

2022-05-01 23:24:12    分类:问答    driver   gpu   nvidia