UOF2 更換使用者在系統上的模組 | 突破授權已滿限制 | 一等一科技 | EIP | BPM

by | 4 月 23, 2026 | 一等一UOF系統, 程式 | 0 comments

Views: 0

官方論壇其實有提供怎麼更換帳號使用的模組,以及程式碼,這篇文章小技巧是可以在某些頁面把使用者換到別的模組...這樣就不會計入官方的授權數,這是實作上我意外發現的技巧,使用上請自己斟酌。

一等一科技 論壇原文

Image

這篇文底部有相關說明

Image

授權免計算教學

基本上就是在你自己開發的頁面上全部加上,開啟後就會在電子簽核,不過官方的說明程式碼有點錯,然後我研究了一下不小心發現了新大陸。

// 這邊建議用UofViewer ,根據我不負責任研究 這個模組沒算在EIP UOF授權中...
Ede.Uof.Utility.OnlineManagement.OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.UofViewer);

這樣就能讓使用者換到別的模組,突破一些(?)限制。

理論上你可以直接在一些Master底下的頁面上加入

<%
    Ede.Uof.Utility.OnlineManagement.OnlineUser.ChangeModule(Ede.Uof.EIP.SystemInfo.Current.UserGUID, 
        Ede.Uof.EIP.SystemInfo.Current.UserIPAddress, Ede.Uof.Utility.License.Modules.UofViewer);
%>

像是這樣

Image

Image

測試一下,這樣大部分的頁面都會是UDocViewer

也可以寫一個外掛欄位,插在畫面上混淆授權數。

Image

一等一的UOF2 EIP 區分那些模組?

  • Frame 基本模組,首頁會在這個
  • EIP 企業資訊入口,公告、討論區、行事曆等EIP功能都在這
  • WKF 電子簽核
  • DMS 文件管理
  • CRM 客戶關係管理
  • PMS 專案管理
  • QUE 問卷管理
  • BM 業務管理
  • PDF 文件轉檔
  • UChat
  • UofViewer
  • EDoc 電子公文

使用模組切換

如果想自己測試一下帳號換到別的模組,這邊提供了我自己寫的小工具

Image

~\CDS\Tools\ChangeOnlineUser.aspx

<%@ Page Title="" Language="C#" MasterPageFile="~/Master/DefaultMasterPage.master" AutoEventWireup="true" CodeFile="ChangeOnlineUser.aspx.cs" Inherits="CDS_Tools_ChangeOnlineUser" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <table class="PopTable">
        <tr>
            <td>使用者ID</td>
            <td><asp:TextBox ID="txtUserID" runat="server"></asp:TextBox></td>
        </tr>
        <tr>
            <td>模組</td>
            <td><asp:RadioButtonList ID="rblSelectModel" runat="server">
                <asp:ListItem Value="Frame">Frame 基本模組</asp:ListItem>
                <asp:ListItem Value="EIP">EIP 企業資訊入口</asp:ListItem>
                <asp:ListItem Value="WKF">WKF 電子簽核</asp:ListItem>
                <asp:ListItem Value="DMS">DMS 文件管理</asp:ListItem>
                <asp:ListItem Value="CRM">CRM 客戶關係管理</asp:ListItem>
                <asp:ListItem Value="PMS">PMS 專案管理</asp:ListItem>
                <asp:ListItem Value="QUE">QUE 問卷調查</asp:ListItem>
                <asp:ListItem Value="BM">BM 業務管理</asp:ListItem>
                <asp:ListItem Value="PDF">PDF 文件轉檔</asp:ListItem>
                <asp:ListItem Value="UChat">UChat</asp:ListItem>
                <asp:ListItem Value="UofViewer">UofViewer</asp:ListItem>
                <asp:ListItem Value="EDoc">EDoc 電子公文</asp:ListItem>
            </asp:RadioButtonList></td>
        </tr>
        <tr>
            <td></td>
            <td><asp:Button ID="btnSubmit" runat="server" Text="變更" OnClick="btnSubmit_OnClick" /></td>
        </tr>
    </table>
</asp:Content>

using Ede.Uof.EIP.SystemInfo;
using Ede.Uof.Utility.OnlineManagement;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class CDS_Tools_ChangeOnlineUser : Ede.Uof.Utility.Page.BasePage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        txtUserID.Text = Current.UserGUID;
    }

    protected void btnSubmit_OnClick(object sender, EventArgs e)
    {
        switch (rblSelectModel.SelectedValue)
        {
            case "Frame":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.Frame);
                break;
            case "WKF":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.WKF);
                break;
            case "EIP":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.EIP);
                break;
             case "DMS":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.DMS);
                break;
            case "CRM":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.CRM);
                break;
            case "PMS":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.PMS);
                break;
            case "QUE":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.QUE);
                break;
            case "BM":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.BM);
                break;
            case "PDF":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.PDF);
                break;
            case "UChat":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.UChat);
                break;
            case "UofViewer":
                Ede.Uof.Utility.OnlineManagement.OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.UofViewer);
                break;
            case "EDoc":
                OnlineUser.ChangeModule(Current.UserGUID, Current.UserIPAddress, Ede.Uof.Utility.License.Modules.EDoc);
                break;

        }
    }
}

0 Comments

Submit a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *