[FileMaker] 如何取得 Client 端的「電腦名稱」與「使用者名稱」?

這裡所指的使用者名稱,指的不是 FileMaker 登入時候的帳號名稱。

這邊的使用者名稱的是「系統電腦」的「使用者名稱」,比如「XXX 的 MacBook Pro」電腦名稱。

查了一些資料,FileMaker 本身似乎並沒有辦法直接取得「電腦名稱」與「使用者名稱」,但可以藉由間接的方式來取得。

方法 1:利用原生的 Get(DesktopPath) 函數

比如我一開始看到的方式,透過 Get(DesktopPath) 函數來取得使用者名稱,在 DataViewer 裡面,如果輸入 Get(DesktopPath),會得到桌面位置,裡面就包含著使用者名稱。

/Macintosh HD/Users/oscarchen/Desktop/

螢幕快照 2018-06-10 下午8.48.11.png

使用者名稱 oscarchen 就在「 /Macintosh HD/Users/ 」的後面,於是我們可以這樣寫計算式:

就可以得到乾淨的 oscarchen 這個使用者名稱。

螢幕快照 2018-06-11 下午4.23.24.png

以上的方法可以得到「使用者名稱」,但是還是沒有辦法得到「電腦名稱」。

方法 2:利用 BaseElement Plugin

這邊要介紹的是另一個方式,透過 BaseElement Plugin 的函數來協助我們取得「使用者名稱」「電腦名稱」這兩個系統資訊,使用的函數是 BE_ExecuteSystemCommand

首先,你需要先安裝有 BaseElement Plugin

(還沒有安裝的人可以參考:安裝 BaseElement

接著,我們先跳開一下,講一下這篇文章所提到的非 FileMaker 的方法:利用 Terminal 終端機來獲取系統資訊。

非常簡單,如果我們進入 Terminal 終端機,直接輸入 “whoami" 跟 “hostname",就可以得到我們要的兩個資訊了。

螢幕快照 2018-06-11 下午4.40.12.png

於是我們得到一個靈感,如果 FileMaker 有函數可以結合系統內建的 Terminal 來取得資料,那就可以在 FileMaker 內取得這兩個系統資訊了!

這個函數就是 BaseElement Plugin 的 BE_ExecuteSystemCommand 函數

這個函數可以讓我們在 FileMaker 內直接取得 Terminal 終端機的輸出結果

螢幕快照 2018-06-11 下午4.46.43.png

參考資料

How do I retrieve the client’s hostname…..?

How do I find my user ID and group in Mac OS X?

FM – Get Functions for Computer Name/IP Address?

[MAC] 免重灌、免裝軟體直接變更Home旁的使用者名稱

我的電腦的註冊是"apple的macbook",而我想修改它該怎麼做?

BaseElements Plugin

[FileMaker] 安裝 Plugins,以 BaseElements 為例

對「[FileMaker] 如何取得 Client 端的「電腦名稱」與「使用者名稱」?」的想法

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s