精华内容
下载资源
问答
  • 如何写软著
    千次阅读
    2021-11-04 11:27:29

    1 背景介绍

    1.1 软著的概念

    软著即软件著作权,市面上任何一个APP在编写完毕之后都会向国家版权中心去申请著作权对自己的软件进行知识产权保护

    对于一个系统来说,可以对系统的功能模块进行拆分,分别进行软著的申请。也就相当于一个系统可以申请多个软著(很水了也就是,凑数用的)

    1.2 软著起源

    2 软著的作用(对于企业来说)

    1、企业宣传
    2、用以申请…(政府补贴啥的…)
    3、证明这个软件是我们自己干的。(有了著作权,那么才能够说明自己是合法的,正规的拥有这款软件,并且后续不管是软件的推广,还是通过这款软件来盈利才有了正当性和唯一性)

    3 申请软著需要的材料

    1、代码文档
    2、软件说明文档(操作手册)
    3、软件基本信息
    4、其他(以下链接)
    https://tm.aliyun.com/channel/copyright/new?spm=5176.23245078.J_9069894860.2.577a1023mkAOaE

    4 材料编写

    4.1 软件运行源码

    4.1.1.源码要求
    1)软件运行源码必须要超过1000行
    2)软著源码文档里不能含有空行
    else:就是把代码粘到word里。

    4.2 软件著作权说明书

    软件著作权说明为软件的使用说明书,中国版权保护中心接收登记的文档包含两种:操作说明书或设计说明书。设计说明书适合没有界面的嵌入式软件,插件软件,后台运行软件以及游戏软件。一般包含结构图,软件流程图,函数说明,模块说明,数据接口,出错设计等。操作说明书适合管理类软件,有操作界面,一般应包含登录界面,主界面,功能界面截图,截图之间有相应的文字说明,能全面展示软件的主要功能。

    4.2.1说明书的基本要求
    1)需要有软件功能的说明
    2)软件说明书必须要有可视化界面(对应的运行截图)

    4.2.2.说明书模板(操作说明书)
    标题:XXXX软件V1.0

    第一章 产品概述
    产品的价值(这个产品为谁提供了什么服务,起到了什么作用,创造了什么价值(提高效率、降低成本等等)),写不出来就百度。。。

    第二章 软件功能介绍
    XX软件主要分为四个部分:A、B、C、D四个部分(系统就按照菜单栏模块写,app就按照前端页面分)

    2.1A模块
    A模块主要包含了1、2、3、4四个功能。
    1)功能1
    a.操作步骤1,预期结果1
    b.操作步骤2,预期结果2

    截图展示
    2)功能2
    同功能1

    2.2B模块

    2.3C模块

    2.4D模块

    (emmmm,以后再修改吧)

    更多相关内容
  • 当公司让我写软著...

    2020-03-23 20:29:57
    公司要写软著,让我把项目代码复制到word里。 我开始还傻傻的复制了几个java类,然后突然醒悟:能用程序解决的事,绝不动手,因为以后还会经常用到,备份下,虽然及其简单,一个递归+读写文件。 再复杂一点,考虑...

    公司要写软著,让我把项目代码复制到word里。
    我开始还傻傻的复制了几个java类,然后突然醒悟:能用程序解决的事,绝不动手,因为以后还会经常用到,备份下,虽然及其简单,一个递归+读写文件。

    再复杂一点,考虑文件编码和自动过滤。如果只是单纯统计代码行数,那IDEA的Statistic插件一定很适合。

        
        import org.junit.jupiter.api.Test;
        
        import java.io.*;
        
        /**
         * 统计代码行数
         *
         * @author jimo
         * @version 1.0.0
         * @date 2020/3/20 19:07
         */
        public class CountCodeLineTest {
        
            @Test
            void copyAllCodeToFile() throws IOException {
        
                String src = "D:\\workspace\\app\\src\\main";
                String output = "D:\\export\\code.txt";
        
                final CountCode test = new CountCode(src, output);
                System.out.println(test.getTotal());
            }
        
            class CountCode {
        
                /**
                 * 源码路径
                 */
                private String srcPath;
                /**
                 * 输出路径
                 */
                private String outPath;
                /**
                 * 总行数
                 */
                private int total;
                /**
                 * 计算哪些文件后缀
                 */
                private String[] suffix = {"java", "conf", "xml", "sql"};
        
                public CountCode(String srcPath, String outPath) throws IOException {
                    this.srcPath = srcPath;
                    this.outPath = outPath;
                    countCode();
                }
        
                private void countCode() throws IOException {
                    final BufferedWriter bw = new BufferedWriter(new FileWriter(outPath));
                    recursiveRead(new File(srcPath), bw);
                    bw.close();
                }
        
                private void recursiveRead(File file, BufferedWriter bw) throws IOException {
                    // 递归读取文件夹
                    if (file.isDirectory()) {
                        final File[] files = file.listFiles();
                        if (files == null || files.length == 0) {
                            return;
                        }
                        for (File f : files) {
                            recursiveRead(f, bw);
                        }
                    } else {
                        if (shouldCount(file.getName())) {
                            readFileLine(file, bw);
                        }
                    }
                }
        
        
                private boolean shouldCount(String name) {
                    for (String s : suffix) {
                        if (name.endsWith(s)) {
                            return true;
                        }
                    }
                    return false;
                }
        
                private void readFileLine(File file, BufferedWriter bw) throws IOException {
                    final BufferedReader br = new BufferedReader(new FileReader(file));
                    String line;
                    while ((line = br.readLine()) != null) {
                        bw.write(line);
                        bw.write("\n");
                        total++;
                    }
                    br.close();
                }
        
                public int getTotal() {
                    return total;
                }
            }
        }
    
    
    展开全文
  • 软著源代码整理.zip

    2020-03-09 16:22:04
    软著源代码整理.zip,软著源代码整理,bin,Release,SourceConvert.vshost.exe.manifest,SourceConvert.vshost.exe,SourceConvert.exe,SC_Path.txt,SourceConvert.pdb,Form1.Designer.cs,Program.cs,obj,Release,...
  • 因为项目设计到写软著,一开始只有python程序,所以为了将它可视化界面,我就查了一下GUI界面的制作,下面算是一些笔记吧。整体流程参考b站视频【PYTHON】4分钟搞定GUI软件设计【GUI软件】【PYQT】【软件著作权】 ...

    因为项目设计到写软著,一开始只有python程序,所以为了将它可视化界面,我就查了一下GUI界面的制作,下面算是一些笔记吧。整体流程参考b站视频【PYTHON】4分钟搞定GUI软件设计【GUI软件】【PYQT】【软件著作权】
    细节入门参考PyQt基础知识 配套b站视频PyQt5 快速入门

    1. Qt designer

    pyqt5我的理解就是它是一个python库,然后直接调用就好了,Qt designer就是一个界面设计的软件,你用程序写出来的界面和这个软件设计出来的是一样,可以选择直接在这儿设计,能够得到设计这个页面的代码(下面讲),也可以直接用代码写出界面来,代码写界面会比较好理解,对于每一块怎么安排会更清晰一些,不过我想这些用熟了,哪个都一样。回归整体,安装qt,看一下b站或者知乎博客有很多,不具体讲了,一般会选择安装anaconda的时候,就已经有pyqt5库和qt软件。
    找到路径如图:
    QT designer路径图

    1. 建立窗口,总共有五种窗口如图,选择合适的即可
      QTdesigner设计面图
    • 如果需要菜单栏,那就选择MainWindow,菜单栏命令设置,直接如图

    MainWindow

    • Dialog一般是适用弹出窗口的,有按键okcancel
    • Form目前是不需要菜单栏的,我不清楚具体使用的情况了
      以上三种窗口,前期使用了Form,并试图使用Dialog来作为弹出窗口,后来没能成功将二者联系起来,就放弃了,采用了MainWindow方法,菜单栏命令了程序的运行。
    1. Qt designer面板左侧为部件列表(widget box),里面是设计面板所需要的部件,点击需要的拖动到上面建立的窗口里面即可,部件总共有下面几种类型:
    • 布局(可以整体布局)

    • 间隔(垂直和水平两个部件,防止间隔部件的地方,不可以放置其它部件)

    • 按键(就是软件中的按钮,给定信号和槽就能执行相应的命令)

    • 两种列表部件(目前暂未用过)

    • 容器(就像划分房间是的,把部件放进容器就可以整体控制)

    • 输入(需要在界面上输入的地方都是在这里选)

    • 展示(需要将生成的东西展示就在这里选)
      在这里插入图片描述
      主要使用的就是下面三大部分(只记录我目前知道且用过的):

    • 按键
      好像没啥可讲的了

    • 输入(需要在界面上输入的地方都是在这里选)
      Line Edit线性编辑器,这个输入为一行,用来输入数字比较合适
      Text Edit文本编辑器,输入多行文字合适,双击可以设定文本样式,
      Plain Text Edit纯文本编辑器,似乎是个简约版的文本输入框,没有 Text Edit花样多
      其它待开发

    • 展示
      Label标签,页面上的文字基本上都可以用它来展示,不能多行
      Text Browser 文本浏览器,基本上程序输出的文本内容,都可以在这展示,python中使用append即可,不过只输出字符串,需要将输出内容转换为字符串格式
      Graphics View 图片视图,将程序绘制的图在这儿展示,目前还未完全掌握
      其它待开发

    1. Qt designer右侧是添加的部件信息,对于添加到窗口的部件,需要对它们进行一个更方便管理的处理,以及对其信息进行修改,总共有下面三个:
    • 对象查看器: 对添加的部件的总体管理,主要对其修改命名,方便管理,因为其本质为代码里的变量名称,所以只能命名为英文
    • 属性编辑器:目前能用上的地方就是“对象名称”,也就是对象查看器可以修改的地方,部件位置微调(手动调节部件距离一次为10),字体大小等
    • 信号、槽编辑器: 对于按键等部件可以设置命令,例如,点击某个按钮让它执行xx命令。
      在这里插入图片描述

    2. ui转py文件

    完成Qt designer界面设计之后,需要将界面设计内容转为py文件,才可以对其进行程序化处理,(当然也可以直接在py文件中程序设计界面)。
    将窗口保存,命名为xx.ui文件,在同目录下新建文本文档(.txt),在文档中输入

    pyuic5 -o py文件名.py xx(定义的ui文件名).ui
    pause
    

    保存txt文件,将txt文件后缀改为bat,双击运行即可得到界面设计出xx.ui文件对应的py程序
    示例:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    打开py文件后,程序如图,采用了文章b站视频up的示例程序

    # -*- coding: utf-8 -*-
    
    # Form implementation generated from reading ui file 'add.ui' (add.ui为如上述视频出处代码)
    #
    # Created by: PyQt5 UI code generator 5.9.2
    #
    # WARNING! All changes made in this file will be lost!
    
    from PyQt5 import QtCore, QtGui, QtWidgets
    #class Ui_Ui文件名(object)
    class Ui_Form(object):
        def setupUi(self, Form):
    	# def setupUi(self,Ui文件名)
            #ui文件信息
            Form.setObjectName("Form")
            Form.resize(679, 350)
            #每一个部件的信息,对象名称、大小、位置、类型,
            #self.部件名称,QT设计后,这些都不需要我们写,我们只需要将其能对应上界面位置即可,如果是手写程序则需按照样式来
            self.input1 = QtWidgets.QLineEdit(Form)
            self.input1.setGeometry(QtCore.QRect(60, 90, 141, 51))
            font = QtGui.QFont()
            font.setPointSize(20)
            self.input1.setFont(font)
            self.input1.setText("")
            self.input1.setObjectName("input1")
            self.input2 = QtWidgets.QLineEdit(Form)
            self.input2.setGeometry(QtCore.QRect(250, 90, 141, 51))
            font = QtGui.QFont()
            font.setPointSize(20)
            self.input2.setFont(font)
            self.input2.setText("")
            self.input2.setObjectName("input2")
            self.label = QtWidgets.QLabel(Form)
            self.label.setGeometry(QtCore.QRect(210, 110, 31, 16))
            font = QtGui.QFont()
            font.setPointSize(20)
            self.label.setFont(font)
            self.label.setObjectName("label")
            self.label_2 = QtWidgets.QLabel(Form)
            self.label_2.setGeometry(QtCore.QRect(400, 110, 31, 16))
            font = QtGui.QFont()
            font.setPointSize(20)
            self.label_2.setFont(font)
            self.label_2.setObjectName("label_2")
            self.result = QtWidgets.QTextBrowser(Form)
            self.result.setGeometry(QtCore.QRect(420, 91, 191, 51))
            font = QtGui.QFont()
            font.setPointSize(20)
            self.result.setFont(font)
            self.result.setObjectName("result")
            self.add = QtWidgets.QPushButton(Form)
            self.add.setGeometry(QtCore.QRect(240, 180, 161, 51))
            font = QtGui.QFont()
            font.setPointSize(20)
            self.add.setFont(font)
            self.add.setObjectName("add")
    
            self.retranslateUi(Form)
            QtCore.QMetaObject.connectSlotsByName(Form)
            
    #	def retranslateUi(self,Ui文件名)
        def retranslateUi(self, Form):
        #	_translate = QtCore.QCoreApplication.translate
            _translate = QtCore.QCoreApplication.translate
    		#Ui文件名.setWindowTitle(_translate("Ui文件名", "主窗口命名"))
    		#self.输入框/按键等对象名称.setText(_translate("Ui文件名", "标签1"))        
    		#self.菜单/标题等.setTitle(_translate("Ui文件名", "显示信息"))
            Form.setWindowTitle(_translate("Form", "主窗口命名"))
            self.label.setText(_translate("Form", "标签信息1"))
            self.label_2.setText(_translate("Form", "标签信息2"))
            self.add.setText(_translate("Form", "标签信息3"))
    

    3.建立界面与已有python程序之间的关系

    首先,不管三七二十一,直接新建一个py文件,输入下面的程序

    #导入程序运行必须模块
    import sys#PyQt5中使用的基本控件都在PyQt5.QtWidgets模块中
    from PyQt5.QtWidgets import QApplication, QMainWindow#导入designer工具生成的图窗模块,可能在使用过程中,这些还不够,但是导入库是一个常规操作,不需要我多解释
    from add import Ui_Form #导入上述ui文件转出的py文件中可视化界面的类 
     
    class MyMainForm(QMainWindow, Ui_Form):
        def __init__(self, parent=None):
            super(MyMainForm, self).__init__(parent)
            self.setupUi(self)
    		#1
    	#2
    
            
    if __name__ == "__main__":#固定的,PyQt5程序都需要QApplication对象。sys.argv是命令行参数列表,确保程序可以双击运行
        app = QApplication(sys.argv)#初始化
        myWin = MyMainForm()#将窗口控件显示在屏幕上
        myWin.show()#程序运行,sys.exit方法确保程序完整退出。
        sys.exit(app.exec_())
    
    1. 该程序为程序能运行的必须条件 ,然后是建立与可视化界面各部件与程序直接的联系。
    2. 在上面程序注释1的位置,对各部件赋予命令执行。
      主要格式为:
    #self.部件名称.信号.connect(self.命令函数名)
    #,常见为点击按键执行命令,我用到的点击执行命令有以下两种   
         	self.菜单栏.triggered.connect(self.def1)
            self.pushButton.clicked.connect(self.Sdef2)
    
    
    1. 在注释2的位置,定义函数,为各部件需要执行的命令函数。
      主要格式为:
    def def1(self,input1,input2,……):
    	函数主体
    
    1. 函数中用到全局变量记得用global
    2. 用到界面中的变量,记得加self

    4. 写在最后

    把ui的py文件直接复制到新的py文件,也就完成了。总体看起来,其实不用特别久,就能写完这个,由于自己摸鱼和代码不熟练问题,写了十天才写完,还没完全摸到pyqt的门道,这篇笔记最后有一些烂尾,也是因为自己偷懒没用继续写了,接下来还是要为了自己的实习、以及论文做努力,后面会补上之前查资料用上的所有参考的博客、b站视频。

    首次编辑于2022/4/27

    展开全文
  • 用于申请游戏软著中的使用说明书案例其中 为需要一些位置标注更改和删除
  • 特别说明,软著说明问题,软著代码文档,两个文件,现在csdn仅允许上传一个文档。 按照这个格式,直接把你自己的代码复制进来,就能直接使用了,不会的话请查看我的博客...
  • 软著申请范例文档

    2018-11-11 18:43:15
    软著申请范例.zip,标准截图说明书---范例.doc,WEB诊断源代码样本-前30页 后30页 每页不得低于50行.doc,软件信息登记表.doc电力铁塔生产加工优化节料管理系统(使用说明书)信息中心二○○九年十月潍坊长安铁塔股份...
  • 同时提供源码转换PDF和源码转TXT两种工具。 默认支持的语言包括但不限于 Java 、 C 、 C++ 、 C# 、C#/WPF 经过测试,安卓APP源码和IOS源码也可以兼容。 注意!如果使用Source2Pdf 导出PDF,需要操作系统中已...
  • 软著申请模板 软著申请模板 软著申请模板 软著申请模板 软著申请模板 软著申请模板 软著申请模板 软著申请模板
  • 我用matlab只做了3个GUI界面,这些界面通过按钮可以相互切换的,但是如果我要制作软著的话我要如何处理代码,是全部复制吗到一起吗?我用matlab的打包工具也只能打包一个其中的一个文件,不能一起打包。
  • 软著申请模板

    2022-08-04 09:51:59
    前言 关于申请软著,已经过好几篇相关的文章了,可以看下面几篇文章了解 套用模板,又申请了两张软著证书 软著申请模板,帮助了不少小伙伴少走弯路 啊哦,软著申请,收到了补正通知 有了模板在手,申请就不需要再...

    前言
    关于申请软著,已经写过好几篇相关的文章了,可以看下面几篇文章了解
    套用模板,又申请了两张软著证书
    软著申请模板,帮助了不少小伙伴少走弯路
    啊哦,软著申请,收到了补正通知

    有了模板在手,申请就不需要再找代办了,完完全全可以靠自己来申请,真的是除了寄资料的邮费和打印材料的费用外,再无其他费用了。

    成果
    可以看下我用模板申请到的软著成果。

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    注意
    里面的格式不要变,内容要替换成和你软件相关的。
    特别是页眉页脚,页码不要动。

    山水有相逢,来日皆可期,谢谢阅读,我们再会

    我手中的金箍棒,上能通天,下能探海

    上一篇:电商收付通,多服务商模式

    展开全文
  • /** * @author lisa * @date 2020/11/20 - 20:42 */ /** * 申请软著代码复制删除注释和空行 */ public class SourceExport { public static void main(String[] args) throws Exception { //文件读取路径 // File ...
  • 软著撰写注意事项

    2022-05-18 17:36:59
    软著的概念: 软著即软件著作权,市面上任何一个APP在编写完毕后,都会向国家版权中心去申请著作权对自己的软件进行知识产权保护。软著证书上的首次发表时间指的是在软件撰写完毕后,投入到实践生活中去使用的时间...
  • 软著的全称是计算机软件著作权,是著作权的一种,软著源代码文档是必备的材料。现实生活中,申请软著需要源代码申请材料,源代码申请材料有格式 等要求,并且源代码分布在一个项目文件夹中各个文件,复制到一个 word...
  • 单片机&嵌入式软著

    千次阅读 2021-12-15 14:20:03
    单片机类型软著可以咨询问我
  • 该软件能帮助程序员将代码直接整理组织成申请软件著作权所需的源代码文档,本文件生成全部... 软件需要.net 4.5 和Office word 2007以上,有问题可以联系作者解决! 生成700页代码(35K代码行)预计用时25分钟左右。
  • 软著申请注意事项放心选择,秉执着专业诚信的理念,客户的权益是我们坚定地追求。软著申请注意事项放心选择, 不过,在大多数情况下,审查员可能会根据上述步骤3进行判断:权利要求中除了包括抽象概念外,还包括例如...
  • eclipse统计代码行数 完全统计,勾选正则表达式,输入\n: 统计去除注释行与空白行后的行数,正则表达式: ^[ \t]*[^ \t\n\r/#*]+.*$ 通过notepad替换掉代码的空行和注释 替换/* : /\*.*$ ......
  • package demo; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader;...import java.io.FileWriter;... * 申请软著代码复制删除注释和空行 ...
  • 软著获取java源代码文件,输出txt
  • java,c++,javascript,html APP 代码整理工具用于申请软著,输入代码的文件夹路径点击安装即可。
  • 因为要申请软著,需要填写总代码行数和生成代码源码,网上都太难用,我自己一个自己使用。有问题可以以前交流 具体看代码,github仓库 总打不开不上传了 码云仓库,https://gitee.com/lizhiliwo/ruanzhu 记得给我...
  • Java版本软著源代码整理工具,最近在申请软著20个,要准备源代码,还要删注释删空格,一个60页我想死了,工欲善其事必先利其,还是个代码跑快点,网上参考了下,修修改改写了个,还没怎么测试各位多包涵,支持多...
  • 软著统计行数代码见我上一篇。 Java Web项目一弄就是4万行,这还只是java文件,没有包含html,js,xml那些,可见废话有多少。 改改顶部的几个参数,直接运行,会生成个output.txt,然后把内容粘贴到word里面,设置...
  • 目录 1.引言 1 1.1前言 1 1.2项目背景 1 2. 功能模块 2 2.1总体设计 2 2.2功能模块设计 2 2.3系统数据库设计 6 3. 系统实现 6 3.1系统首页 6 3.2电机管理模块实现 7 3.3齿轮箱管理模块实现 8 3.4发电量管理模块实现 ...
  • 软著申请

    2019-12-10 15:52:48
    微信小程序软件登记著作权时,分两种情况: 一是登记后台管理系统,硬件环境就是服务器的配置,软件环境也是服务器的配置;注意,其文档应该主要是后台管理内容。 二是登记客户端,硬件环境可以是智能手机平台,软件...
  • 作为电子类专业的学生,在短暂的大学四年里会参加许许多多的学科竞赛和专业类竞赛,我们会很多代码、做很多作品、很多软件。当竞赛结束后,可以把这些作品申请专利(实用新型或者发明专利),也可以把代码和软件...
  • 软著申请流程与方法详解

    千次阅读 2021-03-19 13:31:17
    软著
  • import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; import java.io.FileWriter;...//软著源代码快速提取——java代码读写 public class Re...
  • 什么是软著软著全称“计算机软件著作权”,是指软件的开发者或者其他权利人依据有关著作权法律的规定,对于软件作品所享有的各项专有权利。 软件开发完成后,软件著作权人享有发表权、开发者身份权、使用权、使用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,598
精华内容 3,439
关键字:

如何写软著

友情链接: yhj.rar