CN113066515A - 一种光盘刻录方法、计算设备及可读存储介质 - Google Patents

一种光盘刻录方法、计算设备及可读存储介质 Download PDF

Info

Publication number
CN113066515A
CN113066515A CN202110397722.5A CN202110397722A CN113066515A CN 113066515 A CN113066515 A CN 113066515A CN 202110397722 A CN202110397722 A CN 202110397722A CN 113066515 A CN113066515 A CN 113066515A
Authority
CN
China
Prior art keywords
recording
optical disc
file
iso9660
recorded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110397722.5A
Other languages
English (en)
Other versions
CN113066515B (zh
Inventor
吕伍军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Uniontech Software Technology Co Ltd
Original Assignee
Uniontech Software Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Uniontech Software Technology Co Ltd filed Critical Uniontech Software Technology Co Ltd
Priority to CN202110397722.5A priority Critical patent/CN113066515B/zh
Publication of CN113066515A publication Critical patent/CN113066515A/zh
Application granted granted Critical
Publication of CN113066515B publication Critical patent/CN113066515B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B7/00Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
    • G11B7/004Recording, reproducing or erasing methods; Read, write or erase circuits therefor
    • G11B7/0045Recording

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明公开了一种光盘刻录方法,适于在计算设备中执行,计算设备连接光盘刻录光驱,方法包括:挂载插入光盘刻录光驱的待刻录光盘;获取用户选择的光盘刻录参数,光盘刻录参数包括刻录方式;创建新的光盘刻录会话;根据刻录方式将目标文件刻录到待刻录光盘。本发明一并公开了相应的计算设备及可读存储介质。

Description

一种光盘刻录方法、计算设备及可读存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种光盘刻录方法、计算设备及可读存储介质。
背景技术
光盘是计算机常见的外部存储介质,通过光盘刻录可以实现数据的光盘存储,但在光驱刻录领域,Windows系统和Linux系统平台各自为战,不能做到很好的兼容,用户无法实现在各个操作系统平台下进行相互光盘追加刻录,例如:在Linux系统中刻录的光盘,在Windows系统中文件名称显示存在异常,包括中文不能被识别、英文小写字母变大写等情况。同时,在Linux、Windows两系统平台中,使用ISO9660文件系统进行刻录,在追加刻录的过程中,Linux系统中刻录的文件出现文件后缀乱码的问题,在Windows中不可识别。这些问题严重影响了用户在Linux和Windows系统之间的切换使用,不仅影响用户工作效率,还可能导致文件系统丢失的风险。
基于Linux内核开发的UOS系统日益盛行,与Windows系统之间的数据交互需求也随之增加,而作为数据载体的光盘在多个系统平台间的相互追加成为目前亟待解决的问题之一。
发明内容
为此,本发明提供了一种光盘刻录方法、计算设备及可读存储介质,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种光盘刻录方法,适于在计算设备中执行,计算设备连接光盘刻录光驱,方法包括:挂载插入光盘刻录光驱的待刻录光盘;获取用户选择的光盘刻录参数,光盘刻录参数包括刻录方式;创建新的光盘刻录会话;根据刻录方式将目标文件刻录到待刻录光盘。
可选的,在根据本发明的光盘刻录方法中,挂载插入光盘刻录光驱的待刻录光盘包括:识别待刻录光盘的文件系统;通过计算设备系统平台相应的文件系统挂载待刻录光盘。
可选的,在根据本发明的光盘刻录方法中,刻录方式包括:标准ISO9660、ISO9660+Rockridge、ISO9660+Joliet,方法还包括:当待刻录光盘仅支持基于标准ISO9660文件系统的Linux系统追加刻录时,选择标准ISO9660刻录方式;当待刻录光盘支持Linux系统与Windows系统交互追加刻录时,选择ISO9660+Joliet刻录方式;当待刻录光盘仅支持Linux系统追加刻录时,选择ISO9660+Rockridge刻录方式。
可选的,在根据本发明的光盘刻录方法中,创建新的光盘刻录会话包括:获取最近一个会话中的目录结构;在目录结构末尾追加目标文件的文件名称;对目标文件的文件名称进行第一处理。
可选的,在根据本发明的光盘刻录方法中,对目标文件的文件名称进行第一处理包括:当刻录方式为ISO9660+Joliet时,对目标文件文件名称进行后缀处理,对目标文件的文件名称进行编码转换。
可选的,在根据本发明的光盘刻录方法中,对目标文件的文件名称进行编码转换包括:将ASCII编码格式的文件名称转换成Unicode编码格式。
可选的,在根据本发明的光盘刻录方法中,根据刻录方式将目标文件刻录到待刻录光盘包括:当刻录方式为标准ISO9660时,根据标准ISO9660将目标文件刻录到待刻录光盘上;当刻录方式为ISO9660+Rockridge时,根据Rockridge标准将目标文件刻录到待刻录光盘上;当刻录方式为ISO9660+Joliet时,根据Joliet标准将目标文件刻录到待刻录光盘上。
可选的,在根据本发明的光盘刻录方法中,还包括:当刻录方式为ISO9660+Joliet时,光盘中的文件名称在Linux系统显示时,对文件名称进行第二处理。
可选的,在根据本发明的光盘刻录方法中,对文件名称进行第二处理包括:将文件名称的“;1”或“.;1”删除。
可选的,在根据本发明的光盘刻录方法中,光盘刻录参数还包括刻录速率。
根据本发明的又一个方面,提供一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行如上的任一项光盘刻录方法的指令。
根据本发明的又一方面,提供一种存储有程序指令的可读存储介质,当程序指令被计算设备读取并执行时,使得计算设备执行如上的任一项光盘刻录方法。
根据本发明的光盘刻录方法,在Linux操作系统刻录光盘时,通过选择刻录方式,可以实现Linux系统与Windows系统的相互追加刻录,实现光盘数据安全交换,有效避免了在Linux系统与Windows系统进行光盘相互追加刻录时出现光盘文件名乱码和文件不可读的问题。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的计算设备100的框图;
图2示出了根据本发明一个实施例的光盘刻录方法200的流程图;
图3示出了根据本发明一个实施例的创建新session目录结构过程300的流程图;
图4示出了根据本发明一个实施例的用户参数设置界面示意图;
图5示出了根据本发明一个实施例的光盘刻录方法软件架构图500的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
光盘刻录支持ISO9660和通用光盘格式(Universal Disc Format,UDF)两种文件系统。其中,ISO9660文件系统,作为光盘文件系统的元老,最初由High Sierra文件系统的标准派生出来,已有三十多年的历史,UDF作为另一标准,它采用标准的封装写入技术(Packet Writing,PW)将可擦写光盘当作硬盘来使,用户可以在光盘上修改和删除文件,这两种文件格式都支持Windows操作系统。
在现有Linux系统中,都使用该系统中的通用刻录工具Brasero进行光驱刻录,Brasero使用GNU通用公共许可证,是一个自由软件,被集成进GNOME,其版本号随着GNOME桌面版本号变化。Brasero自从2008年开始,增加了很多刻录功能和一些特性,因此在Linux被大量使用,Brasero虽然功能强大,但最大的问题就是不能与Windows进行光盘互相追加刻录,在Linux、Windows两系统中,基于ISO9660文件系统进行刻录,在追加刻录的过程中,Linux发行版本刻录的中文文件在Windows中不可识别,例如:Linux系统中刻录的光盘中的包含中文名称的文件“测试文件.txt;1”,在Windows系统中将出现异常显示,显示为“____.TXT_1”,即中文无法正常显示,小写英文转换成大写英文,而用以标识版本信息的“;1”则显示为不能被识别的“_1”,最终导致文件读取错误。本发明基于这一缺陷,在Linux系统中解决了与Windows系统多平台互相追加刻录的问题。
图1示出了根据本发明一个实施例的计算设备100的示意图。需要说明的是,图1所示的计算设备100仅为一个示例,在实践中,用于实施本发明的光盘刻录方法的计算设备可以是任意型号的设备,其硬件配置情况可以与图1所示的计算设备100相同,也可以与图1所示的计算设备100不同。实践中用于实施本发明的光盘刻录方法的计算设备可以对图1所示的计算设备100的硬件组件进行增加或删减,本发明对计算设备的具体硬件配置情况不做限制。
如图1所示,在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。
取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器(µP)、微控制器(µC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的高速缓存、处理器核心114和寄存器116。示例的处理器核心114可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器118可以与处理器104一起使用,或者在一些实现中,存储器控制器118可以是处理器104的一个内部部分。
取决于期望的配置,系统存储器106可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。计算设备中的物理内存通常指的是易失性存储器RAM,磁盘中的数据需要加载至物理内存中才能够被处理器104读取。系统存储器106可以包括操作系统120、一个或者多个应用122以及程序数据124。在一些实施方式中,应用122可以布置为在操作系统上由一个或多个处理器104利用程序数据124执行指令。操作系统120例如可以是Linux、Unix、UOS等,其包括用于处理基本系统服务以及执行依赖于硬件的任务的程序指令。应用122包括用于实现各种用户期望的功能的程序指令,应用122例如可以是浏览器、即时通讯软件、软件开发工具(例如集成开发环境IDE、编译器等)等,但不限于此。当应用122被安装到计算设备100中时,可以向操作系统120添加驱动模块。
在计算设备100启动运行时,处理器104会从存储器106中读取操作系统120的程序指令并执行。应用122运行在操作系统120之上,利用操作系统120以及底层硬件提供的接口来实现各种用户期望的功能。当用户启动应用122时,应用122会加载至存储器106中,处理器104从存储器106中读取并执行应用122的程序指令。
计算设备100还包括储存设备132,储存设备132包括可移除储存器136和不可移除储存器138,可移除储存器136和不可移除储存器138均与储存接口总线134连接。
计算设备100还可以包括有助于从各种接口设备(例如,输出设备142、外设接口144和通信设备146)到基本配置102经由总线/接口控制器130的通信的接口总线140。示例的输出设备142包括图形处理单元148和音频处理单元150。它们可以被配置为有助于经由一个或者多个A/V端口152与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口144可以包括串行接口控制器154和并行接口控制器156,它们可以被配置为有助于经由一个或者多个I/O端口158和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备146可以包括网络控制器160,其可以被布置为便于经由一个或者多个通信端口164与一个或者多个其他计算设备162通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备100中,应用122包括用于执行本发明的光盘刻录方法200的指令,该指令可以指示处理器104执行本发明的光盘刻录方法200。
图2示出了根据本发明一个实施例的光盘刻录方法200的流程图,适于在计算设备(例如图1所示的计算设备)中执行。
如图2所示,方法200始于步骤S210识别光盘文件系统。光盘上的文件系统主流的有两种,ISO9660和UDF。
ISO9660是一种较为传统也是发展时间最长的光盘文件系统,作为光盘文件系统的元老,从最初的HighSierra文件系统的标准派生出来,已有三十多年的历史。毫无疑问,ISO9660已成为目前使用最最广泛的光盘文件系统。其优点是,几乎受到所有操作系统的支持,具有极其优秀的兼容性。缺点是,原生的ISO9660文件系统只支持8.3格式的文件名,以及8层的文件嵌套。8.3文件名是指,文件名不得多余8个字符,文件后缀不得多余3个字符,并且都得是大写字符。在标准的ISO9660文件系统下,所有超出8.3标准的文件名都会被大写字母、数字和下划线的组合规范化,最高8层的文件嵌套是指,文件夹的深度最多为8层。当然,也有一系列的措施去解决这一特性的不足,比如微软推出的Joliet扩展文件系统,Posix体系的RockRidge扩展文件系统都是为了解决长文件名和多层文件嵌套的问题。
UDF是一种新型的文件系统,UDF文件系统自95年1.0版本问世,从1.0版本迭代到了2005年的2.60版本也是目前最新的版本,实际的发展时间也只有10年而已,UDF最大的优点是,可以将光盘模拟成为普通U盘,在光盘内直接对文件进行增删操作,而免去了需要先添加文件再刻录的步骤,这一技术被称作包刻录技术,也基于这一技术的特点,windows将其称为实时文件系统。但UDF也存在一些缺点,比如携带UDF文件系统的光盘,在普通的CD播放机上使用,可能无法读取到内容,比较陈旧版本的操作系统,也可能不支持UDF。
本实施例中基于ISO9660文件系统实现与Windows操作系统的互相追加刻录,因此,在本步骤中,需要识别光盘是否为ISO9660文件系统。
随后进入步骤S220,挂载待刻录的光盘。在识别出光盘的文件系统后,通过系统的相应的文件系统挂载光盘,例如,当步骤S210中识别出待刻录的光盘的文件系统为ISO9660时,则通过当前操作系统中对应的ISO9660文件系统挂载光盘。
光盘挂载完成后进入刻录过程,进入步骤S230,用户选择要刻录的目标数据,并将目标数据复制到光盘的内存等待刻录。
随后进入步骤S240,获取本次刻录的刻录参数,刻录参数包括刻录方式、刻录速度等。其中,刻录方式包括ISO9660+Joliet,ISO9660+Rockridge,标准ISO9660三种刻录方式。Joliet和Rockridge都是对ISO9660的扩展。本步骤中,刻录方式ISO9660+Joliet可以实现Linux与Windows多系统平台的互相追加刻录,刻录方式ISO9660+Rockridge仅支持Linux系统的追加刻录,标准ISO9660的刻录方式支持Linux系统的追加刻录,且仅遵循标准ISO9660规则。
刻录参数本质上是用户通过桌面文件管理系统提供的接口进行输入的,还可以设置在刻录完成时是否闭盘等。图4示出了根据本发明一个实施例的用户参数设置界面示意图。
在用户设置好参数开始刻录后,进入步骤S250,创建新的session,每一次刻录会创建一个session,光盘中可以有多个session,每个session中都保存有一个目录,文件在光盘中的数据独立存在,目录中的文件名,指向实际的文件块。即,文件名和文件实际内容并不是一个整体,在创建新的session时,需要将上一个session的目录复制到新创建的session中,该过程并不会复制文件本身,而是相当于增加了一个链接到该文件的软链接;添加需要刻录的文件到新的session中,将文件列表追加到目录后。在本步骤中需要根据文件信息对文件名称进行处理,具体将在图3中进行说明,此处不再详细介绍。
随后根据刻录方式开启刻录过程,当用户选择的刻录方式为ISO9660+Joliet时,进入步骤S360,开启基于Joliet文件系统的刻录过程。
当用户选择的刻录方式为ISO9660+Rockridge时,进入步骤S370,开启基于Rockridge的刻录过程。
当用户选择的刻录方式为标准ISO9660刻录时,进入步骤S380,开启基于标准ISO9660的刻录过程。
图3示出了根据本发明一个实施例的创建新session目录结构过程300的流程图,如图3所示,过程300始于步骤S310,获取上一个session中的目录结构中的文件名称。当光盘存在已经刻录的文件,获取上一个session目录结构中的文件名称,表1示出了一个session目录结构的示意图,可以看出,文件名称中带有版本信息“;1”标识,光盘的刻录方式为“ISO9660+Joliet”。
表1
Figure 545529DEST_PATH_IMAGE001
随后进入步骤S320,在获取到的目录结构的文件名称列表中添加本次刻录的文件名称列表,例如,本次刻录E.txt,F.txt,G.txt,在获取到的上一个session的文件名称列表的基础上追加本次刻录的文件名称列表,结果如表2所示。
表2
Figure 462669DEST_PATH_IMAGE002
随后进入步骤S330,对新追加的文件列表进行“;1”处理,即新追加的文件列表添加“;1”处理,处理结果如表3所示。
表3
Figure 242406DEST_PATH_IMAGE003
随后进入步骤S340,对文件名称进行转码。Linux系统中的编码格式为ASCII,Windows中编码格式为Unicode编码,为了在当前Linux系统中刻录的文件的文件名称能够在Windows系统中正常显示,不出现乱码,需要将当前Linux系统中创建的session的文件目录转换成Unicode编码格式,以便在Windows系统中能够正常显示。
根据本发明的又一个实施例,光盘的刻录格式为ISO9660+Rockridge或标准ECMA,则在添加新刻录的文件列表时,直接追加文件名称,不需要进行“;1”处理和编码转换。其中,用于标识版本信息的文件名后缀可以为“;1”或“.;1”
根据本发明的又一个实施例,在文件管理系统显示光盘中的文件名称时,为了避免“;1”乱码显示,需要在显示文件名称时,删除文件名称末尾的“;1”。
图5示出了根据本发明一个实施例的光盘刻录方法软件架构500的示意图。如图5所示,软件架构500包括系统内核层510、刻录工具库层520、disomaster接口层530以及桌面文件管理系统层540。
系统内核层510为本发明的光盘刻录方法所运行的操作系统的内核,可以是Linux内核、Unix内核或UOS内核。
刻录工具库层520为在内核基础上支持的相关库文件,在ISO9660技术栈方向,内核层集成了xorriso、libisofs、libisoburn刻录工具库。
disomaster接口层530基于Qt技术,封装xorriso、libisofs、libisoburn底层刻录流程,提供特定接口支持上层应用,包括刻录方式选择接口和刻录速度设置接口,其中,刻录方式选择接口具体包括标准ISO9660、ISO9660+Rockridge、ISO9660+joliet接口,提供了更加友好的刻录接口,供其他应用程序调用。
桌面文件管理系统层540为用户界面层,为用户提供参数设置接口。
在一个具体实施例中,刻录工具库层520中集成了xorriso刻录工具库,并提供libisofs、libisoburn刻录第二次开发库,需要增加libisofs、libisoburn刻录功能,不仅支持Unix光驱追加刻录,也要支持Windows光驱追加刻录功能。在不改变当前底层接口的前提下,优化现有接口内部实现,保证现有已知刻录工具(Brasero等)能正常工作的前提下,进一步提升追加刻录功能。
libisofs为ISO9660文件系统刻录提供了最基本的刻录API函数实现,实现了RockRidge扩展协议。但在追加刻录方面,不能支持与Windows的追加刻录方案,其根本原因是未能完全实现Joliet扩展协议的支持,本实施例中,基于现有libisofs-1.5.2版本实现对Joliet扩展协议的完全支持,来解决ISO9660文件系统在Windows的追加刻录问题。
本实施例中,标准ISO9660采用ASCII编码来描述文件,而在Joliet扩展规范中,文件描述符将采用Unicode(UCS-2)编码,利用ISO9660的补充卷描述符(SVD)特性来指定一组记录的文件,现有的ISO10646字符集规范则可以由ISO2022转义序列标识,这种识别UnicodeSVD的技术符合ISO9660规范,并且不会破坏现有主卷描述符(PVD)引用的文件描述符。因此在本章节中,我们将利用现有IsoFilesystem数据结构,增加SVD字段,实现SVD扩展记录,并利用SVD扩展记录实现文件描述符正确读写,避免乱码出现。
具体实现中,根据现有设计,优化IsoFilesystem数据结构,增加如下数据定义:
uint32_t iso_root_block,读取根文件夹的时候对lba块(逻辑区块地址)扩展填充,包括PVD(ISO,Rockridge)或SVD信息;
uint32_tpvd_root_block,对iso_root_block的扩展,针对PVD信息再次标注;
uint32_tsvd_root_block,增加对iso_root_block的扩展,针对SVD信息再次标注,主要用于识别Joliet扩展刻录;
unsigned int joliet_map,增加对Joliet扩展刻录状态的记录,0表示unmapped状态,表明需根据磁盘现有文件系统目录进行文件名显示或刻录,1表示stripped状态,明确对文件不进行“;1”或“.;1”版本信息追加。
在代码实现中,使用read_block获取现有文件lba块信息,并记录至ecma119_dir_record数据结构buffer;通过get_name试着获取当前文件描述符信息,通过file_unit_size、interleave_gap_size判断数据块的正确性;获取当前块标志位flags,根据ECMA-119,6.8.1描述,判断文件还是文件夹,文件夹则不进行此流程;根据标志位判断标准ISO9660、ISO9660+Rockridge、ISO9660+Joliet;Joliet扩展文件系统下,根据ecma119_dir_record的file_id, len_fi获取当前文件名;判断iso_root_block是否满足UCS-2编码,并判断与svd_root_block的一致性,标记当前文件命名的joliet_map规则,否则使用ecma119_map规则;对文件名进行“;1”或“.;1”后缀处理,满足joliet_map或ecma119_map规则;调用iso_truncate_rr_name进行重命名,完成文件名的Joliet流程化。示例代码如下:
/**
* How to convert Joliet file names.
* @param opts
* The option set to be manipulated
* @param ecma119_map
* The conversion mode to apply:
* 0 = unmapped: Take name as recorded in Joliet directoryrecord
* (not suitable for writing it to a new ISOfilesystem)
* 1 = stripped: Strip off trailing ";1" or ".;1"
*/
int iso_read_opts_set_joliet_map(IsoReadOpts *opts, int joliet_map)
{
if (opts == NULL)
return ISO_NULL_POINTER;
if (joliet_map < 0 || joliet_map > 1)
return 0;
opts->joliet_map = joliet_map;
return ISO_SUCCESS;
}
static
int iso_file_source_new_ifs(IsoImageFilesystem *fs, IsoFileSource *parent,
struct ecma119_dir_record *record,
IsoFileSource **src, int flag)
{
....
if (record->len_fi[0] == 1 && record->file_id[0] == 0) {
/* "." entry, we can call this for root node, so... */
if (!(atts.st_mode & S_IFDIR)) {
ret = iso_msg_submit(fsdata->msgid, ISO_WRONG_ECMA119, 0,
"Wrong ISO file name. \".\" not dir");
goto ex;
}
} else {
name = get_name(fsdata, (char*)record->file_id, record->len_fi[0]);
if (name == NULL) {
ret = iso_msg_submit(fsdata->msgid, ISO_WRONG_ECMA119, 0,
"Cannot retrieve file name");
goto ex;
}
/* remove trailing version number */
len = strlen(name);
if (fsdata->iso_root_block == fsdata->svd_root_block)
ecma119_map = fsdata->joliet_map;
else
ecma119_map = fsdata->ecma119_map;
if (ecma119_map >= 1 && ecma119_map <= 3 &&
len > 2 && name[len-2] == ';' && name[len-1] == '1'){
if (len > 3 && name[len-3] == '.') {
/*
* the "." is mandatory, so in most cases isincluded only
* for standard compliance
*/
name[len-3] = '\0';
} else {
name[len-2] = '\0';
}
}
if (ecma119_map == 2 || ecma119_map == 3) {
for (cpt = name; *cpt != 0; cpt++) {
if (ecma119_map == 2) {
if (islower(*cpt))
*cpt = toupper(*cpt);
} else {
if (isupper(*cpt))
*cpt = tolower(*cpt);
}
}
}
}
if (name != NULL) {
if ((int) strlen(name) > fsdata->truncate_length) {
ret = iso_truncate_rr_name(fsdata->truncate_mode,
fsdata->truncate_length, name,0);
if (ret < 0)
goto ex;
}
}
....
}
libisofs实现了基于ISO9660刻录的基本API,而libisoburn相对libisofs,为更上层的基本库,着重于刻录流程控制、参数控制、消息回调、异常处理等方面的实现。
由于libisofs缺少Joliet的扩展刻录方面的考虑,libisoburn也缺少流程上的考虑,在本实施例中,需要增加Joliet流程控制,参数控制方面的实现。具体包括:isoburn_read_opts,记录当前光盘刻录策略的相关参数,包括以下设置:
unsigned int norock,标记是否需要进行Rockridge操作;
unsigned int noiso1999,标记是否对ISO9660进行ISO9660:1999增强扩展;
unsigned int do_ecma119_map,是否使用iso_read_opts_set_ecma119_map()读取ecma119规范;
unsigned int map_mode,记录ecma119_map当前文件名规范;
unsigned int nojoliet,标记是否需要进行Joliet操作;
unsigned int do_joliet_map,调用iso_read_opts_set_joliet_map()获取joliet_map规范;
unsigned int joliet_map_mode,记录joliet_map当前文件名规范;
unsigned int nojoliet,标记是否需要进行Joliet操作;
unsigned int do_joliet_map,调用iso_read_opts_set_joliet_map()获取joliet_map规范;
unsigned int joliet_map_mode,记录joliet_map当前文件名规范。
根据现有参数系列化规则,特约定int第14位、第15位用于Joliet相关操作,方便实现参数系列化操作,即:bit14=do_joliet_map,bit15=joliet_map_mode。
在本具体实例中,流程上提供读写两条线,其中读的流程包括:以isoburn_read_image为代表的API,根据载入光盘,获取文件树信息,在这里需要判定Joliet文件系统,并载入Joliet map_mode设置。写流程包括:以Xorriso_option_XXX为代表的序列API,根据当前刻录诉求,设置当前session的刻录选项,典型的有:Xorriso_option_speed(设置刻录速度)、Xorriso_option_rockridge(设置支持Rockridge扩展刻录)、Xorriso_option_close(刻录后是否封盘)等。
要支持Joliet文件扩展,读的流程需要在增加如下功能:在isoburn_read_image中增加Joliet文件系统识别,增加map_mode设置,主要代码结合libisofs新增接口进行实现。示例代码如下:
int isoburn_read_image(struct burn_drive *d,
struct isoburn_read_opts *read_opts,
IsoImage **image)
{
....
if(read_opts->do_ecma119_map)
iso_read_opts_set_ecma119_map(ropts, read_opts->map_mode);
if(read_opts->do_joliet_map)
iso_read_opts_set_joliet_map(ropts, read_opts->joliet_map_mode);
iso_read_opts_set_new_inos(ropts, read_opts->noino);
iso_read_opts_set_no_joliet(ropts, read_opts->nojoliet);
iso_read_opts_set_no_iso1999(ropts, read_opts->noiso1999);
iso_read_opts_set_preferjoliet(ropts, read_opts->preferjoliet);
....
}
写的流程需要增加与disomaster层的适配,新增操作选项 BurnOption,包括:
KeepAppendable = 1,是否支持追加刻录;
VerifyDatas = 1 << 1,识别光盘数据;
EjectDisc = 1 << 2,弹出光盘;
ISO9660Only = 1 << 3,标准ISO9660刻录;
JolietSupport = 1 << 4,Joliet扩展刻录;
RockRidgeSupport = 1 << 5,rockridge 扩展刻录。
新增bool commit(const BurnOptions &opts, int speed = 0, QString volId= "ISOIMAGE"),通过参数,使用ISO9660Only支持标准ISO9660刻录,满足8+3文件命名方式;使用JolietSupport支持基于ISO9660与Windows系统的互相追加刻录;使用RockRidgeSupport支持与Unix互相追加刻录。示例代码如下:
int Xorriso_option_joliet(struct XorrisO *xorriso, char *mode, intflag)
{
if(strcmp(mode, "off")==0)
xorriso->do_joliet= 0;
else if(strcmp(mode, "on")==0)
xorriso->do_joliet= 1;
...
}
int isoburn_ropt_set_extensions(struct isoburn_read_opts *o, int ext)
{
....
o->do_ecma119_map= !!(ext & 2048);
o->map_mode= (ext >> 12) & 3;
o->do_joliet_map= !!(ext & 16384); // bit 14
o->joliet_map_mode= !!(ext & 32768); // bit 15
....
}
int isoburn_ropt_get_extensions(struct isoburn_read_opts *o, int *ext)
{
*ext= ....
((!!o->do_ecma119_map) << 11) | ((o->map_mode & 3) << 12) |
((!!o->do_joliet_map) << 14) | ((!!o->joliet_map_mode) << 15);
...
}
libisofs、libisoburn作为系统底层库,实现上使用C语言,只考虑了非UI的流程。因此加入disomaster接口层530,架构上能承上启下,合理适配各种业务。具体实现中,新增操作选项BurnOption,包括:
KeepAppendable = 1,是否支持追加刻录;
VerifyDatas = 1 << 1,识别光盘数据;
EjectDisc = 1 << 2,弹出光盘;
ISO9660Only = 1 << 3,标准ISO9660刻录;
JolietSupport = 1 << 4,Joliet扩展刻录;
RockRidgeSupport = 1 << 5,rockridge 扩展刻录。
新增bool commit(const BurnOptions &opts, int speed = 0, QString volId= "ISOIMAGE"),通过参数,使用ISO9660Only支持标准ISO9660刻录,满足8+3文件命名方式;使用JolietSupport支持基于ISO9660的与Windows互相追加刻录;使用RockRidgeSupport支持与Unix互相追加刻录。
在数据处理过程中,通过BurnOptions进行数据有效性检查;根据speed,使用Xorriso_option_speed设置刻录速度;根据BurnOptions::KeepAppendable,使用Xorriso_option_close设置当前光盘是否支持追加刻录;根据BurnOptions::JolietSupport,使用Xorriso_option_joliet设置当前光盘是否支持Joliet扩展刻录,适配基于ISO9660的UOS系统和Windows系统间的光盘追加刻录;根据BurnOptions::RockRidgeSupport,使用Xorriso_option_rockridge设置当前光盘是否支持Rockridge扩展刻录,适配UOS系统和Unix系统之间的光盘追加刻录,调用Xorriso_option_commit开始当前次刻录流程。
基于disomaster提供的刻录流程,桌面文件管理系统层540提供UI操作选项,支持用户选择ISO9660追加刻录流程,包括:标准ISO9660、ISO9660+Rockridge(可用于Unix)、ISO9660+Joliet(可用于Windows),其中ISO9660+Joliet(可用于Windows)作为默认刻录方案,可以作为Windows追加刻录方案。
根据本发明的光盘刻录方法,在Linux操作系统刻录光盘时,通过选择刻录方式,可以实现Linux系统与Windows系统的相互追加刻录,实现光盘数据安全交换,有效避免了在Linux系统与Windows系统进行光盘相互追加刻录时出现光盘文件名乱码和文件不可读的问题。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的光盘刻录方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (10)

1.一种光盘刻录方法,适于在计算设备中执行,所述计算设备连接光盘刻录光驱,所述方法包括:
挂载插入所述光盘刻录光驱的待刻录光盘;
获取用户选择的光盘刻录参数,所述光盘刻录参数包括刻录方式;
创建新的光盘刻录会话;
根据所述刻录方式将所述目标文件刻录到所述待刻录光盘。
2.如权利要求1所述的方法,所述挂载插入所述光盘刻录光驱的待刻录光盘包括:
识别所述待刻录光盘的文件系统;
通过计算设备系统平台相应的文件系统挂载所述待刻录光盘。
3.如权利要求1或2所述的方法,其中,所述刻录方式包括:标准ISO9660、ISO9660+Rockridge、ISO9660+Joliet,所述方法还包括:
当所述待刻录光盘仅支持基于标准ISO9660文件系统的Linux系统追加刻录时,选择标准ISO9660刻录方式;
当所述待刻录光盘支持Linux系统与Windows系统交互追加刻录时,选择ISO9660+Joliet刻录方式;
当所述待刻录光盘仅支持Linux系统追加刻录时,选择ISO9660+Rockridge刻录方式。
4.如权利要求1或2所述的方法,其中,所述创建新的光盘刻录会话包括:
获取最近一个会话中的目录结构;
在所述目录结构末尾追加所述目标文件的文件名称;
对所述目标文件的文件名称进行第一处理。
5.如权利要求4所述的方法,其中,所述对所述目标文件的文件名称进行第一处理包括:
当所述刻录方式为ISO9660+Joliet时,对所述目标文件文件名称进行后缀处理,对所述目标文件的文件名称进行编码转换。
6.如权利要求5所述的方法,其中,所述对所述目标文件的文件名称进行编码转换包括:
将ASCII编码格式的文件名称转换成Unicode编码格式。
7.如权利要求1或2所述的方法,其中,所述根据所述刻录方式将所述目标文件刻录到所述待刻录光盘包括:
当所述刻录方式为标准ISO9660时,根据标准ISO9660将所述目标文件刻录到所述待刻录光盘上;
当所述刻录方式为ISO9660+Rockridge时,根据Rockridge标准将所述目标文件刻录到所述待刻录光盘上;
当所述刻录方式为ISO9660+Joliet时,根据Joliet标准将所述目标文件刻录到所述待刻录光盘上。
8.如权利要求1或2所述的方法,还包括:
当所述刻录方式为ISO9660+Joliet时,所述光盘中的文件名称在Linux系统显示时,对文件名称进行第二处理,其中,所述对文件名称进行第二处理包括:将文件名称的“;1”或“.;1”删除。
9.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-8中任一项所述方法的指令。
10.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-8中任一项所述方法。
CN202110397722.5A 2021-04-14 2021-04-14 一种光盘刻录方法、计算设备及可读存储介质 Active CN113066515B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110397722.5A CN113066515B (zh) 2021-04-14 2021-04-14 一种光盘刻录方法、计算设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110397722.5A CN113066515B (zh) 2021-04-14 2021-04-14 一种光盘刻录方法、计算设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN113066515A true CN113066515A (zh) 2021-07-02
CN113066515B CN113066515B (zh) 2022-04-29

Family

ID=76566797

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110397722.5A Active CN113066515B (zh) 2021-04-14 2021-04-14 一种光盘刻录方法、计算设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN113066515B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113655960A (zh) * 2021-08-16 2021-11-16 成都统信软件技术有限公司 一种光盘可读性修复方法及计算设备
CN113823331A (zh) * 2021-10-12 2021-12-21 成都统信软件技术有限公司 一种光盘追加刻录方法、装置及计算设备
CN114446328A (zh) * 2021-12-27 2022-05-06 奇安信科技集团股份有限公司 光盘刻录审计方法及装置
CN116778975A (zh) * 2023-05-29 2023-09-19 上海沪方软件有限公司 光盘追加刻录的方法、装置、电子设备及可读存储介质
CN116798457A (zh) * 2023-08-29 2023-09-22 中孚安全技术有限公司 刻录行为识别与管控方法、系统、设备及介质

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050066117A1 (en) * 2003-09-19 2005-03-24 Don Ramsey Method for encoding and decoding confidential optical disc
US20060013100A1 (en) * 2004-07-15 2006-01-19 Ming-Chiao Ho Press key operating type optical disk duplicating system
CN101458626A (zh) * 2007-12-11 2009-06-17 英业达股份有限公司 安装linux操作系统的方法
US20110125818A1 (en) * 2004-03-18 2011-05-26 Andrew Liebman Novel media file for multi-platform non-linear video editing systems
US20120210311A1 (en) * 2011-02-14 2012-08-16 Fujitsu Limited Updating apparatus, updating method and recording medium
US20130028062A1 (en) * 2011-02-28 2013-01-31 Mediatek Singapore Pte. Ltd. Optical disc drive and method of accessing optical disc
CN103646650A (zh) * 2013-11-15 2014-03-19 天津天地伟业数码科技有限公司 在嵌入式硬盘录像机上实现无光盘启动刻录的方法
CN105575409A (zh) * 2015-12-16 2016-05-11 天津天地伟业数码科技有限公司 在嵌入式主机下光盘刻录mp4文件的方法
CN106325906A (zh) * 2015-07-01 2017-01-11 昆达电脑科技(昆山)有限公司 显示光盘安装类型的方法
CN109901845A (zh) * 2017-12-11 2019-06-18 中标软件有限公司 桌面操作系统启动盘的制作方法
CN110851880A (zh) * 2019-10-16 2020-02-28 昆明灵智科技有限公司 一种电脑数据安全控制系统
CN112346668A (zh) * 2021-01-08 2021-02-09 统信软件技术有限公司 一种光盘信息获取方法、计算设备及可读存储介质
CN112416379A (zh) * 2021-01-21 2021-02-26 统信软件技术有限公司 一种应用程序安装方法、装置、计算设备及可读存储介质
CN112530467A (zh) * 2019-10-08 2021-03-19 北京中科开迪软件有限公司 一种光盘存储追加刻录方法及系统

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050066117A1 (en) * 2003-09-19 2005-03-24 Don Ramsey Method for encoding and decoding confidential optical disc
US20110125818A1 (en) * 2004-03-18 2011-05-26 Andrew Liebman Novel media file for multi-platform non-linear video editing systems
US20060013100A1 (en) * 2004-07-15 2006-01-19 Ming-Chiao Ho Press key operating type optical disk duplicating system
CN101458626A (zh) * 2007-12-11 2009-06-17 英业达股份有限公司 安装linux操作系统的方法
US20120210311A1 (en) * 2011-02-14 2012-08-16 Fujitsu Limited Updating apparatus, updating method and recording medium
US20130028062A1 (en) * 2011-02-28 2013-01-31 Mediatek Singapore Pte. Ltd. Optical disc drive and method of accessing optical disc
CN103646650A (zh) * 2013-11-15 2014-03-19 天津天地伟业数码科技有限公司 在嵌入式硬盘录像机上实现无光盘启动刻录的方法
CN106325906A (zh) * 2015-07-01 2017-01-11 昆达电脑科技(昆山)有限公司 显示光盘安装类型的方法
CN105575409A (zh) * 2015-12-16 2016-05-11 天津天地伟业数码科技有限公司 在嵌入式主机下光盘刻录mp4文件的方法
CN109901845A (zh) * 2017-12-11 2019-06-18 中标软件有限公司 桌面操作系统启动盘的制作方法
CN112530467A (zh) * 2019-10-08 2021-03-19 北京中科开迪软件有限公司 一种光盘存储追加刻录方法及系统
CN110851880A (zh) * 2019-10-16 2020-02-28 昆明灵智科技有限公司 一种电脑数据安全控制系统
CN112346668A (zh) * 2021-01-08 2021-02-09 统信软件技术有限公司 一种光盘信息获取方法、计算设备及可读存储介质
CN112416379A (zh) * 2021-01-21 2021-02-26 统信软件技术有限公司 一种应用程序安装方法、装置、计算设备及可读存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113655960A (zh) * 2021-08-16 2021-11-16 成都统信软件技术有限公司 一种光盘可读性修复方法及计算设备
CN113655960B (zh) * 2021-08-16 2023-09-12 成都统信软件技术有限公司 一种光盘可读性修复方法及计算设备
CN113823331A (zh) * 2021-10-12 2021-12-21 成都统信软件技术有限公司 一种光盘追加刻录方法、装置及计算设备
CN113823331B (zh) * 2021-10-12 2023-02-28 成都统信软件技术有限公司 一种光盘追加刻录方法、装置及计算设备
CN114446328A (zh) * 2021-12-27 2022-05-06 奇安信科技集团股份有限公司 光盘刻录审计方法及装置
CN114446328B (zh) * 2021-12-27 2023-09-22 奇安信科技集团股份有限公司 光盘刻录审计方法及装置
CN116778975A (zh) * 2023-05-29 2023-09-19 上海沪方软件有限公司 光盘追加刻录的方法、装置、电子设备及可读存储介质
CN116778975B (zh) * 2023-05-29 2024-03-12 上海沪方软件有限公司 光盘追加刻录的方法、装置、电子设备及可读存储介质
CN116798457A (zh) * 2023-08-29 2023-09-22 中孚安全技术有限公司 刻录行为识别与管控方法、系统、设备及介质
CN116798457B (zh) * 2023-08-29 2023-12-15 中孚安全技术有限公司 刻录行为识别与管控方法、系统、设备及介质

Also Published As

Publication number Publication date
CN113066515B (zh) 2022-04-29

Similar Documents

Publication Publication Date Title
CN113066515B (zh) 一种光盘刻录方法、计算设备及可读存储介质
JP4818278B2 (ja) アプリケーション連動方法およびそのシステム
CN102341823B (zh) 计算机上的内容再现方法和系统
US8707286B2 (en) Unique context-based code enhancement
US8024363B2 (en) Information processing apparatus, information processing method, program and program recording medium
US20080263258A1 (en) Method and System for Migrating Virtual Machines Between Hypervisors
US20070136659A1 (en) Interfaces for creation and access of extensible markup language paper specification documents
JP2002055995A (ja) 情報処理方法及び装置
US20170139813A1 (en) Method and device for checking influence of deleting cache file, and mobile terminal
CN113823331B (zh) 一种光盘追加刻录方法、装置及计算设备
US10394756B2 (en) System and method for customizing archive of a device driver generator tool for a user
KR20140099892A (ko) 상응하는 프라이머리 애플리케이션 데이터로부터 유래된 식별자에 기초한 보조 데이터로의 액세스 기법
CN105160018A (zh) 一种复制/粘贴图片的方法、装置和系统
JP3715478B2 (ja) インストレーション回復システム用装置および方法
JP5475199B2 (ja) 前処理済みのファイルを実行させるためのファイル処理装置及びその方法をコンピュータで行うための記録媒体
US20100037040A1 (en) Method and apparatus for implementing virtual environment
JP4958481B2 (ja) Webサービス実行方法及び情報処理装置
CN113407999B (zh) 一种文件保护方法、计算设备及存储介质
WO2011020259A1 (zh) 供用户自定义字体的方法
CN112231761B (zh) 一种设备挂载方法、计算设备及可读存储介质
CN112148710B (zh) 微服务分库方法、系统和介质
JP4348880B2 (ja) ファイル管理プログラム、ファイル管理プログラムを記録したコンピュータ読取可能な記録媒体、およびファイル管理方法
CN114281257A (zh) 一种光盘文件的快速预览方法、计算设备及存储介质
JP5842437B2 (ja) 情報処理装置及び情報処理プログラム
JP2007219724A (ja) メモリダンプファイルシステム、メモリダンプファイル方法及びコンピュータプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant