|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 31 樓
|
發表於: 星期六 一月 23, 2021 9:47 pm 文章主題: |
|
|
1.回傳 json 字串
2.php 有字串轉array的函式,從vfp組合一下字串就好
php 是弱型態 的開發工具,
所以轉換不會太麻煩 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 32 樓
|
發表於: 星期日 一月 24, 2021 3:45 pm 文章主題: |
|
|
目前google有看到一個情況,
無法在 x64(64bit) 應用程式中建立 x86(32bit)物件
雖然有一個修改登錄檔(reg)的方式可能可以解決,但不是100%可以
https://techtalk.gfi.com/32bit-object-64bit-environment/
1.Locate your COM object GUID under the HKey_Classes_Root\Wow6432Node\CLSID\[GUID]
2.Once located add a new REG_SZ (string) Value. Name should be AppID and data should be the same COM object GUID you have just searched for
3.Add a new key under HKey_Classes_Root\Wow6432Node\AppID\
The new key should be called the same as the com object GUID
4.Under the new key you just added, add a new REG_SZ (string) Value, and call it DllSurrogate. Leave the value empty
5.Create a new Key under HKey_Local_Machine\Software\Classes\AppID\
Again the new key should be called the same as the COM object’s GUID. No values are necessary to be added under this key.
補充:底下圖好像抓錯,請按上面步驟修改.可以對照一下 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙
syntech 在 星期五 一月 29, 2021 5:03 pm 作了第 2 次修改 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 33 樓
|
發表於: 星期五 一月 29, 2021 11:41 am 文章主題: |
|
|
承上PO.
我測試的VFP COM 物件可以用上面的方法處理
在X64 WIN10 ,X64 XAMPP (xampp-windows-x64-7.3.26-0-VC15-installer.exe) 上,
1. 把 vfp com 等相關檔案放在 c:\xampp\htdocs\vfp
2.不利用 VFP9 compile 及 註冊,純粹使用 c:\windows\syswow64\regsvr32.exe 註冊 (請看 29 樓)
3.依 32 樓修改reg檔
4.browser 可以正確執行 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
小賴
註冊時間: 2004-12-27 文章: 475
第 34 樓
|
發表於: 星期六 一月 30, 2021 9:39 am 文章主題: |
|
|
PHP VFP_Com 存取 File Sever DBF資料失敗
電腦 A : PHP XAMPP VFP_Com 所在電腦
電腦 B : FILE SEVER (DBC/DBF資料) 所在電腦
電腦 C : 其他區網電腦
B電腦 DBC/DBF 所在路徑 已於 A電腦 Maping 為 F:\
問題點:
於PHP 使用 VFP_Com 無法在取 F:\
(錯誤訊息:找不到 F:\Ploy.DBF)
但相同程式在 VFP 使用 VFP_Com 是可以的
其他測試 :
將 DBF 從 B電腦移至 A電腦 PHP 執行 OK
將 DBF 從 B電腦移至 C電腦 PHP 執行 NG
為何我的 PHP VFP_Com 只能存取本地端的資料 ? |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 35 樓
|
發表於: 星期六 一月 30, 2021 8:40 pm 文章主題: |
|
|
樓上的範例,
2013年,在XP 上我實驗過類似的東西,
(環境應該是 x86 xp + x86 xampp + php5)
這樣做是沒問題的
但現在的WINDOWS 的使用者管理比較複雜,
我記得這跟 apache2.4 服務的啟動帳戶有關,不可以使用 "本機系統帳戶",
要另外定義高權限的使用者,
以這個使用者重新定義網路磁碟機,或是用 "net use" 分享網路資源
實際情況要找一下資料才知道
----
目前我們家的方案是把 dbf 通通 轉到m$ sql server,
以 "資料夾"_"檔案名" 的方式建立 sql server 的table,
所以就有前一陣子po 的把"dbf 上傳到 sql server "的程式.
http://vfp.sunyear.com.tw/viewtopic.php?t=7064
這樣子做可以讓其他公司或是mis,或是想用 excel 拉資料的使用者比較方便 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 36 樓
|
發表於: 星期一 二月 01, 2021 5:05 pm 文章主題: |
|
|
承上.
WIN10 X64 (33樓環境)
使用本機系統管理員(Local System)確定無法建立網路磁碟機,
改另外新增使用者的方式.
測試步驟:
1.另外新增一個使用者,等級是"系統管理員(administrators)"
2.在[服務]中,把apache2.4的登入帳戶改為步驟1的使用者.
3.修改php_com物件,加入建立網路磁碟機及use dbf
4.目的pc加上步驟1的使用者,並付予適當權限,設定檔案分享
5.測試php網頁
需要再抓圖及貼程式碼. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
小賴
註冊時間: 2004-12-27 文章: 475
第 37 樓
|
發表於: 星期一 二月 01, 2021 6:19 pm 文章主題: |
|
|
感謝 syntech 大熱心回應
我先試試
不過 ...
"需要再抓圖及貼程式碼"
意思是要我等你抓圖及貼程式碼
還是:
如果我有需要你再抓圖及貼程式碼
程式設計師的職業病 XD |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 38 樓
|
發表於: 星期一 二月 01, 2021 6:27 pm 文章主題: |
|
|
別讓他人的程式碼限制自己的想像力
代碼: |
DEFINE CLASS COM01 AS Custom OLEPUBLIC && 專案名稱是PHP_COM
FUNCTION getCUSDate() AS STRING
SYS(987,.T.)
SYS(3101,65001)
local lcCUSDate
lcCUSDate = ""
DECLARE integer WNetAddConnection IN win32api string,string,string
cShare_Name = "\\192.168.0.1\D"
nOK = 0
nOK = WNetAddConnection(cShare_Name, .NULL., "M:")
IF nOK = 0
lcCUSDate = lcCUSDate+"<tr><td>已建立網路磁碟機</td></tr>"
ELSE
lcCUSDate = lcCUSDate+"<tr><td>無法建立網路磁碟機</td></tr>"
ENDIF
IF FILE( "M:\data\SYS01\CUS.dbf")
USE "M:\data\SYS01\CUS.dbf" ALIAS iid IN 0
SELECT iid
GO top
lcCUSDate =lcCUSDate+ "<tr><td>"+ALLTRIM(CUST_NO)+"</td><td>"+ALLTRIM(CUST_NAME)+"</td></tr>"
USE IN iid
ELSE
lcCUSDate = lcCUSDate+"<tr><td>找不到檔案</td></tr>"
ENDIF
DECLARE integer WNetCancelConnection2 IN WIN32API string,INTEGER
IF WNetCancelConnection2("M:",1) =0
lcCUSDate = lcCUSDate+"<tr><td>網路磁碟機已切斷</td></tr>"
ELSE
lcCUSDate = lcCUSDate+"<tr><td>網路磁碟機切斷有誤</td></tr>"
ENDIF
RETURN STRCONV(lcCUSDate,9)
ENDFUNC
ENDDEFINE
|
_________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 39 樓
|
發表於: 星期三 七月 19, 2023 10:22 am 文章主題: |
|
|
補充 在 64位元 iis 上 使用 32位元物件的方式.
1.開啟”IIS管理員”,在”應用程式集區”的 “php_web”(這是你安裝的php網站) 上按右鍵,選擇”進階設定”
2.將”啟用32位元應用程式”改為 “true.”,如果有更換使用者的需求(例如執行高權限的vfp com物件)可以修改 “識別”處的使用者.按下確定. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|