|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2022/5/13 10:15:33 |
标题: |
codetyphon写跨平台程序识别系统信息,windows系统下可以,linux下需要sudo到root权限,有没有不需要root的代码? |
浏览:489 |
|
加入我的收藏 |
楼主: |
需要识别linux系统下的硬件信息,比如主板UUID号,磁盘序列号或机器序列号等。 CodeOcean 中的示范代码是这个,在windows下识别正常,在linux下却需要root权限: C:\codetyphon\CodeOcean\pl_TSMBIOS\samples\Table01_System Info\SystemInfo.ctpr
----------------------------------------------
- |
作者: |
|
2022/5/13 10:21:21 |
1楼: |
每个操作系统对系统识别信息这个东西有各自的定义,而不是由程序员来自己用硬件信息来定义,这种硬件信息的获取在WINDOWS迟早也会给你加上权限限制。
所以,避免要求系统权限的方法就是老实用操作系统提供的系统识别信息,不要自己直接读取硬件来自定义系统识别信息。
----------------------------------------------
-
|
作者: |
|
2022/5/13 17:15:32 |
2楼: |
怎么获取linux的C盘卷标?
----------------------------------------------
-
|
作者: |
|
2022/5/13 18:03:06 |
3楼: |
LINUX 下有C盘? 哪有D 嗎? 你要不要先了解一下不同OS 的差異,你會摸到的才兩種,應該花不了什麼時間。
----------------------------------------------
-
|
作者: |
|
2022/5/13 18:12:18 |
4楼: |
Linux 就没有什么 C 盘的概念。
----------------------------------------------
-
|
作者: |
|
2022/5/13 20:06:18 |
5楼: |
Linux系统没有盘符的概念
----------------------------------------------
|
作者: |
|
2022/5/14 1:02:19 |
7楼: |
"所以,避免要求系统权限的方法就是老实用操作系统提供的系统识别信息,不要自己直接读取硬件来自定义系统识别信息。" ---> 请教 linux 中系统提供的系统识别信息如何规范读取?freepascal(codetyphon)中使用。谢谢!
----------------------------------------------
-
|
作者: |
|
2022/5/16 2:24:29 |
8楼: |
linux下一切皆文件,你直接通过fopen打开,然后fread就能读取所有你需要的信息,你要的设备资料,应该是在/dev目录下,你可以找找
----------------------------------------------
-
|
作者: |
|
2022/5/16 10:29:17 |
9楼: |
也不是/DEV 下的都可以讀的, 要什麼資訊, LINUX 上都有對應的COMMAND, 但各家可能 有些差異, 不管是COMMAND 版本或COMMAND 本身。 PARSE COMMAND 的OUTPUT 即可。
----------------------------------------------
-
|
作者: |
|
2022/5/17 13:09:23 |
10楼: |
具体是哪些命令呢?我可以在代码中调用命令,获取命令的输出进行识别。
----------------------------------------------
-
|
作者: |
|
2022/5/17 13:22:07 |
11楼: |
如果linux没有分区概念,为何kylin v10sp1(基于ubuntu20.04)可以对硬盘分区呢? 读取硬件信息是桌面开发的基本操作,应该怎样处理这个问题?
----------------------------------------------
-
|
作者: |
|
2022/5/17 13:57:51 |
12楼: |
10樓的人兄,你想要什麼資訊,請SEARCH 一下就有了,何苦來問? 以UBUNTU 為例 例如CPU 資訊: lscpu HD 資訊: lsblk
----------------------------------------------
-
|
作者: |
|
2022/5/17 13:58:35 |
13楼: |
11樓的,你的桌面開發真的和別人不同。
----------------------------------------------
-
|
作者: |
|
2022/5/17 14:11:39 |
14楼: |
估计说的如图 Volume吧。
以前看系统信息都是用这个 https://www.cnblogs.com/yychuyu/p/13373827.html
源码 git clone https://github.com/lpereira/hardinfo cmake -S hardinfo -B hardinfo-build -DHARDINFO_NOSYNC=1 cmake --build hardinfo-build cd hardinfo-build ./hardinfo #大概叫这名字? 居然不在packages 跑aur去了。。。。 packages aur
期待你们在国产上跑这个 。。看看有啥效果。
此帖子包含附件:
 大小:595.4K |
----------------------------------------------
[alias] co = clone --recurse-submodules up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速 http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
|
作者: |
|
2022/5/17 20:37:23 |
15楼: |
@sxqwhxq (步惊云) linux有分区概念,但是没有Windows的盘符概念。 盘符是Windows在DOS时代的包袱,实际上Windows内核也没有盘符的概念,只有卷(近似理解为分区)的概念
----------------------------------------------
武稀松 http://www.raysoftware.cn
|
作者: |
|
2022/5/17 21:39:50 |
16楼: |
linux应该有读取getvolumeinformation类似的函数
----------------------------------------------
-
|
作者: |
|
2022/5/18 12:04:59 |
17楼: |
edge ctrl+shift+x 测试
作者: (图像: 男) wr960204 (武稀松) ★☆☆☆☆ - 盒子活跃会员 2022/5/17 20:37:23 15楼: @sxqwhxq (步惊云) linux有分区概念,但是没有Windows的盘符概念。 盘符是Windows在DOS时代的包袱,实际上Windows内核也没有盘符的概念,只有卷(近似理解为分区)的概念 ---------- 武稀松(图像) http://www.raysoftware.cn
----------------------------------------------
[alias] co = clone --recurse-submodules up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速 http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
|
作者: |
|
2022/5/18 19:36:33 |
18楼: |
谢谢 @lordaeron ,有很多 lsxxxx 命令可用,还不错。 我的目标是用于电子注册管理,要读取系统的硬件特殊信息,每台机器都不一样的唯一特征数据。上面的这些 lsblk ,lscpu 等命令,对于集中采购的一批相同的机器,似乎没有区别,都是相同的。有没有更好办法?
----------------------------------------------
-
|
作者: |
|
2022/5/18 19:45:47 |
19楼: |
CPU ID:
dmidecode | grep -w ID | sed "s/^.ID\: //g"
kernel uuid dmesg | grep UUID | grep "Kernel" | sed "s/.*UUID=//g" | sed "s/\ ro\ quiet.*//g"
一句話,與其花時間搞這些有的沒的,不好做好你的APP。
----------------------------------------------
-
|
作者: |
|
2022/5/18 23:13:06 |
20楼: |
uuid 可以改写的。。。。。 不过/etc/fstab /的uuid 也不会有人去变他。。 同一批会一样吗?好奇
# Static information about the filesystems. # See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass> # /dev/sda1 UUID=xxXxxxxx-xxxx-xxax-xxxx-xxxxxxxxxx / ext4 rw,relatime 0 1
----------------------------------------------
[alias] co = clone --recurse-submodules up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速 http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
|
作者: |
|
2022/5/18 23:30:34 |
21楼: |
HD 的UUID 在VM 機台上, 有意義否? CPU 能不能升級,升級後,還有意義嗎?
----------------------------------------------
-
|
|