joomla 1.5中的tinymce3编辑浏览按钮不起作用(tinymce3 editor in joomla 1.5 browse button not working)
我有一个奇怪的问题,我有一个joomla 1.5网站,我已经安装了tinymce3因为客户端需要真的很糟糕它有这个按钮,即从word中粘贴,问题是,当我插入例如一个链接或一个图像然后当我点击浏览按钮浏览文件和内容然后没有任何事情发生 onclick ,, :(
我通过网络搜索,发现MCImageManager可能是一个解决方案,但我必须买它..还有其他方法吗? 任何帮助将非常感激,
感谢你们..
i have a strange issue i have a joomla 1.5 site and i have installed the tinymce3 cause the client needs really bad this button that it has ,,that is the paste from word,, the problem is that when i insert for example a link or an image then when i click the browse button to browse files and content then nothing happens with the onclick,, :(
i have searched through the net and found MCImageManager might be a solution but i have to buy it.. is there any other way ? any help would be really appreciated,
thank you guys..
原文:https://stackoverflow.com/questions/26483705
最满意答案
好的,我找到了解决方案,我会把它写在这里的共同的好处。
- 以管理员身份启动VS2010。
- 打开一个类库项目(exmaple - MyProject)。
- 向项目添加一个新界面(参见下面的示例)。
- 添加一个
using System.Runtime.InteropServices;
到文件- 将InterfaceType,Guid的属性添加到界面。
- 您可以使用Tools-> Generate GUID(选项4)生成Guid。
- 添加一个实现接口的类。
- 将属性ClassInterface,Guid,ProgId添加到接口。
ProgId约定是{namespace}。{class}- 在项目中的“属性”文件夹中的AssemblyInfo文件中将ComVisible设置为true。
- 在项目属性菜单中,在构建选项卡标记“注册COM互操作”
- 建设项目
现在可以使用它的ProgID来使用COM对象。
示例:C#代码:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices; namespace Launcher { [InterfaceType(ComInterfaceType.InterfaceIsDual), Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")] public interface ILauncher { void launch(); } [ClassInterface(ClassInterfaceType.None), Guid("YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYY"), ProgId("Launcher.Launcher")] public class Launcher : ILauncher { private string path = null; public void launch() { Console.WriteLine("I launch scripts for a living."); } } }
和VB脚本使用COM:
set obj = createObject("PSLauncher.PSLauncher") obj.launch()
输出结果为:
我启动生活的脚本
OK I found the solution and I'll write it here for the common good.
- Start VS2010 as administrator.
- Open a class library project (exmaple - MyProject).
- Add a new interface to the project (see example below).
- Add a
using System.Runtime.InteropServices;
to the file- Add the attributes InterfaceType, Guid to the interface.
- You can generate a Guid using Tools->Generate GUID (option 4).
- Add a class that implement the interface.
- Add the attributes ClassInterface, Guid, ProgId to the interface.
ProgId convention is {namespace}.{class}- Under the Properties folder in the project in the AssemblyInfo file set ComVisible to true.
- In the project properties menu, in the build tab mark "Register for COM interop"
- Build the project
now you can use your COM object by using it's ProgID.
example: the C# code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices; namespace Launcher { [InterfaceType(ComInterfaceType.InterfaceIsDual), Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")] public interface ILauncher { void launch(); } [ClassInterface(ClassInterfaceType.None), Guid("YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYY"), ProgId("Launcher.Launcher")] public class Launcher : ILauncher { private string path = null; public void launch() { Console.WriteLine("I launch scripts for a living."); } } }
and VB script using the COM:
set obj = createObject("PSLauncher.PSLauncher") obj.launch()
and the output will be:
I launch scripts for a living
相关问答
更多-
你不能,基本上 您只能使用固定别名,例如: using Foo = System.Collections.Generic.KeyValuePair
; class C { Foo x; } You can't, basically. You can only use fixed aliases, such as: using Foo = System.Collections.Generic.KeyValuePair ; class C { Foo x; ... -
好的,我找到了解决方案,我会把它写在这里的共同的好处。 以管理员身份启动VS2010。 打开一个类库项目(exmaple - MyProject)。 向项目添加一个新界面(参见下面的示例)。 添加一个using System.Runtime.InteropServices; 到文件 将InterfaceType,Guid的属性添加到界面。 您可以使用Tools-> Generate GUID(选项4)生成Guid。 添加一个实现接口的类。 将属性ClassInterface,Guid,ProgId添加到接口 ...
-
通过名称创建COM对象时,将通过存储在Windows注册表中的注册信息进行实例化。 即使您的控件是在.NET中创建的,它也使用COM Interop来使用浏览器。 没有先在用户的机器上注册它就无法通过名称创建它。 您可以使用某种类型的ClickOnce类型传送系统,使得在客户端上的安装变得简单 - 但在所有情况下都必须注册。 COM objects, when created by name, are instantiated by registration information stored in th ...
-
如何在C#中为桌面应用程序创建activeX组件(How do I create an activeX component for a desktop application in C#)[2023-12-26]
您应该从新的Windows窗体控件库 - 项目开始。 在项目属性对话框的应用程序部分中,单击[装配信息...]。 然后,您将看到一个复选框:使程序集COM可见。 选中此选项。 这相当于拥有 [assembly: ComVisible(true)] 在AssemblyInfo.cs中。 所有(公共)用户控件都应该可以在例如VB6项目中访问。 我没想到会遇到这么多麻烦 主要观点似乎是: regsvr32对.net-dlls 没用 。 你应该使用regasm.exe You should start with ... -
人, 我找到了我的anwser。 通过使用Win32方法FindWindow,我可以通过搜索窗口名称来获取句柄。 这是一个例子。 [DllImport("User32.dll")] public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); FindWindow(null, /*Here the window name*/); People, I've found my anwser. By using ...
-
作为这样做的人,我觉得不容易。 我最终的解决方案和我在网上找到的解决方案是将Win32 SysHeader32窗口包装在C#中。 (并不容易)熟悉Win32和P / Invoke。 这是我在我的搜索中找到的网站之一。 这是另一个 。 (SysHeader32 C#控件等,在谷歌结果一些。) As someone who has done just this, I did not find it easy. My eventual solution and those I found on the web, ...
-
不可以。由于CF缺少EE Hosting支持,因此无法在托管代码中创建COM / ActiveX控件。 你必须用C ++编写 - 没有别的选择。 No. Since the CF lacks EE Hosting support, there's no way to create a COM/ActiveX control in managed code. You'll have to write in in C++ - there's just no other option.
-
如何在c#.net窗体中创建activex控件以及如何部署(How to create activex control in c#.net windows form and how to deploy)[2023-12-20]
您遇到的问题是由于默认情况下IE10 (及以后)不允许您以默认配置下载/运行Active X控件。 这是出于安全考虑而完成的。 换句话说,ActiveX控件被恶意使用。 不幸的是,您使用的“如何”文章(虽然准确): https : //blogs.msdn.microsoft.com/asiatech/2011/12/05/how-to-develop-and-deploy-activex-control-in -c / ,优先于此默认限制,因此忽略警告用户。 Microsoft提供了一种在IE10和IE1 ... -
呼叫alert(e.message)对我alert(e.message) 。 确保您的ActiveX类正在实现IObjectSafety : using System; using System.Runtime.InteropServices; [ComImport()] [Guid("CB5BDC81-93C1-11CF-8F20-00805F2CD064")] [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] internal interfac ...
-
当你是puttig项目在ScrollViewer里面你需要将ScrollViewer的内容设置为ListBox, 改变你的代码如下, //Create ScrollViewer which is a child of Grid var scroll = new ScrollViewer(); //add to the grid childGrid.Children.Add(scroll); //create lisbox and set it to the content of scrollviewer w ...