發表文章

目前顯示的是有「Windows」標籤的文章

[C++, Visual Studio] 解決問題 : 應用程式無法正確啟動 (0xc000007b)。請按一下 [確定] 關閉應用程式。

這問題是幾個禮拜前發生且解決的問題,在此先做個筆記紀錄。 使用 Visual Studio 2015 編譯C++時跑出," 應用程式無法正確啟動 (0xc000007b)。請按一下 [確定] 關閉應用程式。 "。 解法 :  64位元 : 進入 C:\Windows\SysWOW64,網路上下載最新的 "vcruntime140.dll"以及"vccorlib140.dll"。 應該是這兩個沒錯,若有錯我會在補正。

[TensorFlow, C++, Visual Studio, Windows] TensorFlow C++ 於 Visual Studio 快速使用 DLL,LIB 流程

圖片
很久之前寫過一篇關於編譯TensorFlow C++ 的流程,如下: [TensorFlow, C++, Visual Studio, Windows] TensorFlow C++ 如何編譯與解決BUG (How to build Tensorflow C++ API with Visual Studio and solve BUG) [CMake, TensorFlow, C++, Python] 使用CMake去編譯TensorFlow所要知道的事情... 現在回過頭來看, 其實寫得很不詳細, 主要是寫出當時所處理的BUG以及處理方式。 最近在網路上找到一位善心人士, 將自己所編譯好的 TensorFlow C++ LIB和DLL 檔釋出, 這邊分享這位善心人士 fo40225 的github。 https://github.com/fo40225/tensorflow-windows-wheel 裡面目前只有兩個版本有C++的dll以及lib, r1.10.0 (CPU版本以及GPU版本)和r1.14.0(CPU版本) , 裡面有cpp資料夾, 請參閱所需之cuda和cudnn下載。 以r1.10.0為例,流程如下 : 此github下面有說明其兼容的cuda版本和cudnn版本,對照並下載對應版本。 到此網站針對需求,CPU或GPU去下載分散的壓縮檔。 https://github.com/fo40225/tensorflow-windows-wheel/tree/master/1.10.0/cpp 解壓縮完畢後有三個資料夾,bin、include、lib。 進入Visual Studio 創建空專案,並針對屬性頁新增 VC++目錄->include目錄->"include"資料夾位置 VC++目錄->程式庫目錄->"lib"資料夾位置 連結器->其他相依性->"tensorflow.lib; tensorflow_static.lib" 將bin/tensorflow.dll丟置空專案底下或是System32底下 確定cuda有輸入至環境變數

[Windows] pip install UnicodeEncodeError: ‘cp950’ codec can’t encode character

於cmd底下 chcp 65001  //將編碼轉UTF-8 貌似這樣還是不行,若有新解法會在更新

[Windows] 何謂DLL?

動態連結函式庫 (英語: Dynamic-link library ,縮寫為 DLL )是 微軟公司 在 微軟視窗 作業系統 中實現共用 函式函式庫 概念的一種實作方式。這些函式庫函式的 副檔名 是 .DLL 、 .OCX (包含 ActiveX 控制的函式庫)或者 .DRV (舊式的系統 驅動程式 )。 所謂動態連結,就是把一些經常會共用的程式碼(靜態連結的 OBJ 程式庫)製作成DLL檔,當執行檔呼叫到DLL檔內的函式時,Windows作業系統才會把DLL檔載入記憶體內,DLL檔本身的結構就是可執行檔,當程式有需求時函式才進行連結。透過動態連結方式,記憶體浪費的情形將可大幅降低。 靜態連結函式庫 則是直接 連結 到執行檔。 DLL的檔案格式與視窗 EXE 檔案一樣——也就是說,等同於 32位元 視窗的 可移植執行檔案 (PE)和 16位元 視窗的 New Executable (NE)。作為EXE格式,DLL可以包括 原始碼 、 資料 和 資源 的多種組合。 轉至  WIKI

[VMware] VMware Player and Device/Credential Guard are not compatible...

執行Vmware workstation 15 player時,噴出以下訊息 : VMware Player and Device/Credential Guard are not compatible. VMware Player can be run after disabling Device/Credential Guard. 可能原因是Device Guard或Credential Guard和Workstation不相容,又或是Windows系統的Hyper-V不相容問題,解決方法如下 : 1. 禁用Device Guard或Credential Guard : 執行 -> 輸入 gpedit.msc ->開啟 "本機群組原則編輯器" 依序找尋 "本機電腦原則" -> "電腦設定" -> "系統管理範本" -> "系統" -> "Device Guard" ->"開啟虛擬化型安全性" -> 選擇 "已停用" 2. 對開始按滑鼠右鍵選擇 "應用程式與功能" -> "程式與功能" -> "開啟或關閉Windows功能" -> 關閉Hyper-V 3. 以管理員身分執行cmd -> 輸入指令 "bcdedit /set hypervisorlaunchtype off" 並且重新啟動電腦 

[Windows] Windows 在 cmd 輸入 ls 命令處理, 解決 'ls' 不是內部或外部命令、可執行的程式或批次檔。

在windows 的 cmd 下 ls 會出現 'ls' 不是內部或外部命令、可執行的程式或批次檔。 解決方法 : 在C:/Windows下新增 'ls.bat',內容為 : @echo off dir 完成!

[TensorFlow, C++, Visual Studio, Windows] TensorFlow C++ 如何編譯與解決BUG (How to build Tensorflow C++ API with Visual Studio and solve BUG)

圖片
主要環境 : Windows, TensorFlow, C++, Visual Studio 安裝流程簡單說一下,網路有很多資料,都差不多。 以下為我安裝的各版本,只能說版本真的很重要,要去看文件是否有相通,版本可看 版本對應查詢 。 TensorFlow v1.10 Python v3.5 Visual Studio v2015 Cmake v3.12.0 SWIG v3.0.12 Git v2.20.1 首先先去Github下載對應的版本TensorFlow,記住不要錯...發生別的問題請自行解決。 接著CMake配置如圖,tensorflow的勾選部份自己斟酌吧,後來我有增加打勾tensorflow_GRPC_SUPPORT,網路上的人不推薦,這就看各位吧 : 接著Open Project,進入VS2015編譯,接著我只講我遇到的BUG與解法,沒遇過的別問我,我也不想碰到。 1.找不到 device_attributes.pb_text.h 個人解法: 工具 專案與方案 建置並執行 設置為 1 為平行專案組件的最大數目 2.找不到grpc/grpcpp.h 個人解法: 直接git clone https://github.com/grpc/grpc.git 將噴錯的專案右鍵"屬性" c/c++ 其他include目錄 增加clone下載的grpc\include 3.噴c_api.cc.obj有問題,從錯誤去看,看內容是有關WorkerCacheInterface之類的,我判斷是跟沒有弄到/tensorflow/core/distributed_runtime可能有些許關係,再往下查發現這跟grpc套件可能有關。 因此我重新使用CMake 把tensorflow_ENABLE_GRPC_SUPPORT打勾 把解法二的include增加都拿掉 重新編譯 成功產生tensorflow.lib/dll 4.fatal error LNK1181: 無法打開輸入文件“\pywrap_tensorflow_internal.lib” 個人解法 : 將 _beam_search_ops、_gpu_ops、_lst...